Selection - for Gabe (lots of unmerged changes from a long time ago)

Tons of outstanding changes from somewhere on Gabe's tree.