Fixed sort issue when grouped; Fixed indexed set issue;

- NSArrayController will sort the result of it's arrangedObjects accessor, then add observers for key paths it cares about.  Unfortunately, it doesn't ensure the type of object matches the type specified in the predicate.  This leads to an exception when it tries to add observers of various properties on the TDArrayControllerArrangedSection class.
 - To get past this, it only adds/removes observations of properties it actually responds to

- Fixed issue where the correct code branch wasn't run when the delegate responds to the method returning the location of each section but happens to return nil from that method.