Add archive database caching.

The caching feature copies the SQLite database of an archive from disk
into memory when the archive is opened and writes it back out to disk
when the archive is closed. Operations on an open archive modify the
database in memory but not the one on disk. Database caching is a
workaround implemented for issue 10.

Also improved logging and fixed a bug in the `old_bird_nfc_wrangler`
script that caused files with nonexistent (near DST start) or ambiguous
(near DST end) times to be added to the archive instead of omitted.