Make the background context primary and set up inheritance correctly

Resolves #1480 

Derived contexts saves should probably be merged in using the notification system as well.  Right now there is no way to "unregister" a context from the NSNotificationCenter system, hence the explicit call to save the main context.  I don't think this works exactly right.