Squashed commit of the following: Author: Daniel Albers <daniel@lbers.com> Author: Daniel Albers <daniel@lbers.com> Author: Daniel Albers <daniel@lbers.com> Author: Daniel Albers <daniel@lbers.com> Author: Daniel Albers <daniel@lbers.com> Author: Daniel Albers <daniel@lbers.com> Author: Daniel Albers <daniel@lbers.com> Author: Daniel Albers <daniel@lbers.com>