This adds each and enumerable to Collection

It also moves the collection class into it's own file, in util.

I'd like to eventually have something that takes into account
pagination, either service.query_everything_in_batches().each or
initializing the collection in a way that it knows how to get the next
batch.

This closes #127, mostly.