Collection refactor

I found myself wanting to test some of my own collection subclasses w/o having to necessarily fetch from an access point.

Hence I added the following methods to Collection.m:

```
-(id) initWithJson:(NSDictionary*)json;
-(id) initWithModels:(NSDictionary *)models;
-(void)updateCollectionWithJson:(NSDictionary *)jsonCollection;
-(void)updateCollectionWithModels:(NSDictionary *)modelsJson;
```

Those make it easier to test the collection's logic (e.g.: with loaded JSON stubs.)

Note that this branch has been built upon the changes from pull request #11.

Finally, although the code has been tested, I didn't update the Tests project itself as I wasn't sure wether or not you wanted to change the way tests were organized.