Catch RuntimeException's in case of severe serialization issues.
Don't register with the FCPPersistentRoot until the rest of onResume() has completed successfully; break innerResume() out so we run even the per-class stuff first.
If serialization fails, go back over the file(s) with it turned off, just restoring from scratch. Hence most delayed errors from serialization will now be automatically recovered from.
Explain.
Serialization.
Make fields protected.
Fix serialization. We need the parent fields, and can't restore them in no-args constructors, even though some of these classes aren't persistent.
Indent.
Turn off and on encryption on client.dat on the fly.
Logging
Remove unused code/imports.
MAXIMUM seclevel support (delete client.dat*)
Null out after using.
Don't store these, they are redundant (breaks serialization of failed requests but will still resume).
Use the long message.
Bucket.onResume can throw ResumeFailedException, and use this in TempFileBucket.onResume.
MultiReaderBucket doesn't persist.
Fix NPE
Fix serialization, fixes single file fetches involving archive unpacking.
Pass in boolean for whether the checkpoint is the final one.