Add a test for primitive file operations and perform general cleanup.
Remove argument from File.ReserveObjectNumber().
Add an empty catalog dictionary in file.Close() if one isn't provided.
Seek to last write position in file.Close() to deal with concurrency.
Move automatic copying of indirect objects from Indirect.Serialize()
to Indirect.ObjectNumber().