Move a var declaration to where it is used.
set.Strings{} -> nil.
Make use of state/backups/testing.
Drop NewOrigin.
NewBackupOrigin -> NewBackupMetadata.

The signature of Backups.Create changes to accommodate this.
[]Metadata -> []*Metadata.
Clean up a doc comment.
Clarify a doc comment.
Clarify the separation between canonical and non-canonical ArchivePaths.
Re-organize the builder init.
Panic when rootDir is empty.
Add a helper for copying into a new file.
Make sure the file closes properly.
Fail if there aren't any files to back up.
Log the status *after* checking for a bad pre-condition.
Simplify.
Fix a couple of failing tests missed during earlier fixes.
Clarify a few doc comments.
setBackupStored -> setBackupStoredTime.