Changed Selection to be a non-generic.

Selection now holds its data in an Any variable. This removes the need for the SelectionType protocol.