Get rid of source list controller

This controller was just implementing one protocol for the document window manager. It would have been necessary to either move the delegate there too, or merge the two, to keep related stuff together, and in the end, merging seemed to make more sense.
Add some delegate methods, add editing, expand things from the start.
Properly validate selections.
Selection now gets updated properly.

This part still needs some work, since change notifications are not going out properly. That's an issue in GLLSelection, though. Maybe store only selected objects internally, and have everything else derived?
Allow mapping over index sets.

Necessary for selection.
Rejigged selection.

The selectedObjects array now conceptually can include anything; the various sub-arrays are only parts of that (although in practice, only one kind of selection remains allowed, with special cases for bones).
Selection is properly represented in UI. After much work and adding a lot of code, I'm exactly at where I used to be.
Delete source list controller

I thought I had done that already?