Fix iOS 6 crash with accessing non-persisted obj

In iOS 6 only, objectWithID returned a temporary object that could not be accessed. This made sense, as the object had not yet been persisted. It worked fine on iOS 7, however. Perhaps due to WAL.

- Also cleaned up ContextManager a bit and used a notification for saving the background store, so a main or derived context save would trigger a write.

- Using NSExceptions for unresolved save errors
Fix timing related crash on iOS 6

- objectWithID, as in the previous commit, can fulfill the fault IFF it exists in the persistent store. If a user taps on a blog very fast before the blogs are all saved, it's possible to have an object that cannot be fulfilled.