SelectionGroup mixin

Moving ListView and TreeView to use the SelectionGroup mixin.

@coderespawn let me know how those changes in ListView look. If you like where its going I'll apply it to the TreeView.

One thing I did was made it so clicking toggles selection. Normally you'd use a ctrl-click to add new elements but I'm not sure how this would work with pointer events as on a tablet you don't have a ctrl. Would like to hear your thoughts on that.