Extending Collection relations

I've added the following features into the Collection
Added exclusions to the collection relation so the collection works with groups.
Also added ability to specify a callback function which returns the collection relation

I'm all ears if somebody has a better suggestion on how to make Collection better out of the box without requiring everyone to extend it to do basic stuff.