Fixed mistake. I wrongly checked if the object was exactly NSManagedObject.
However what really should happen with Core Data objects are checking if they are derived from the NSManagedObject.
Changes from @airdrummingfool. Thank you.