Factor out internal +managedObjectContextClass method
Wrap async saves in -performActivitiy… call so previous saves finish up before proceeding
Use -performAsynchronousFileAccessUsingBlock:… instead of activity method

Was the wrong method to use; was deadlocking on quit, among other
potential problems
Avoid deadlock should subclass's additional content writing access the MOC/PSC
Run usual save routines after migrating a store
For some reason I had it in my head the migration include any pending in-memory changes! It really does just migrate the existing store though.
Remove -saveToURL:ofType:forSaveOperation:error: override
Looks like it was left over accidentally from original BSManagedDocument
Our -writeToURL:… routine should take care of any work it was performing
Clarify how additional content is handled during sync writes
Use autorelease pool during reverts
Allows UI to be torn down a little more immediately
Revert using parent context's private queue when available
Otherwise, reverts tend to deadlock
Stop grabbing metadata twice during Save As
Perform Save As by copying existing store and saving atop it

It seems migrating a store where a child context refers to new objects
upsets that child context when it's next asked to save
Fix critical bug whereby regular saves on 10.6 fail after performing an autosave
"Touch" document package when saving
Thanks to Matt Longmire for noting the standard package layout needs us to do this.
Simplify control flow a little
separate reading and writing of document data
More UIDocument-like storage of "contents" during saving
Simplify async save completion handler code a smidge
Shift bulk of writing work into _contents block
Handle backing up a document that's only been autosaved so far
Make duplicates by autosaving doc, then copying raw files

Avoids upsetting SQLite store's tracking of changes