Created AllowOnlyOneExtension for collections

This is helpful for cases where only one item in a collection should
have a certain field. For example, setting current=true on one model
should unset it on the existing "current" model.

See tests for usage examples.