[Mantle] Added uniquing via managedObjectUniquingPredicate. Also added foundation code for an NSValueTransformer for mantle to managed objects via relationshipModelTransformerForKey
mtl_firstObject now calls forward to Foundation's firstObject.
Merge pull request #110 from steipete/removeFirstObject

Remove mtl_firstObject, declare header so we can already use it in Xcode 4
++specta and expecta
Merge remote-tracking branch 'upstream/master'
[Mantle/remind101] Added reverse transformations via relationshipModelTransformerForKey: so managed object relationships can be properly reverse transformed back to MTLModel objects via NSValueTransformer.
[Mantle/remind101] Deleted a commment
[Mantle/remind101] Added some performBlockAndWaits for concurrnecy.
[Mantle/remind101] Added block return type. Added error checking when using uniquing predicate.
[Mantle/remind101] Error correction on the error correction on the uniqing predicate results.
[Mantle/remind101] Corrected spelling errors in documentation comment.
[Mantle/remind101] Got rid of relationshipModelTransformerForKey:
[Mantle/remind101] Adjusted for style guide.
[Mantle/remind101] More style adjustments.
[Mantle/remind101] Replaced - (NSPredicate *)managedObjectUniquingPredicate with + (NSArray *)propertyKeysForManagedObjectUniquing for cleaner uniquing implementation.
Enable tabs in Xcode project settings
Prevent double-deletion of managed objects
[r101-ios-teacher] wrap at 80 characters.
[Mantle/remind101] Changed propertyKeysForManagedObjectUniquing to using NSSet rather than NSArray.
[Mantle/remind101] Lots of code cleanup for managed object adaptor uniquing