Ensure that canonical digest always exactly matches linear digest header when present.
Accept payload vectors by pointer, not reference, to avoid accidentally accepting a temporary that may go out of scope prematurely.
Re-write Amazon tree hash implementation, correctly this time.
Implement UploadArchive and DeleteArchive