[WIP] Add MTLManagedObject

Here's is an alternative approach to dealing with Core Data and Mantle objects. By introducing an `MTLModel`-conforming subclass of `NSManagedObject`, we get the following benefits:

* Users can map directly from JSON to Core Data and back.
* We don't need to replicate caching, uniquing and such inside the `MTLManagedObjectAdapter`
    * we can actually get rid of it entirely.

In order to create a `MTLManagedObject` with just a dictionary of values, I added `+entityDescription` class method that subclasses need to override to return the appropriate entity. The model is then created with that entity and can be inserted into a managed object context manually.

That being said, I'm not very knowledgeable about Core Data, so I may have made some obvious mistakes here.

Let me know what you think.