Extract Underscore collection mixin

This is a small extraction that adds a general purpose Marionette function for making an object act like an underscore collection. 

The `RegionManager` previously had this logic inside its implementation. I believe this code was initially borrowed from Backbone's Collection object. 

This is a relatively low-priority change. If it goes in, hopefully some people will enjoy making  their own objects collection like.