test: have tests clean up after itself
tweak the readme about debian-snapshot
nci: tweak colors
nci: add arrow keys for navigation
nci: re-add nohup to the external viewers

This is *actually* needed to keep the processes running if the main
thread is killed.
add GPL-3 license files
doc: write tags only during sync()

This is to keep a tighter coupling between the
db and the file system.
doc: load bibentry only once, as needed
doc: rename _index_bibentry() to be a little more accurate
doc: write bibfile only during sync()
doc: write file only during sync()
update TODO
cli: no longer need to purge doc during import

all files now written to docdir once at sync()
test: comment tweaks in basic test
test: add test for purged docdir after deletion
db: register prefixes for available sources

This only registers sources from known source modules.
This creates a dependency on source modules at search time,
which is unfortunate.  We may be able to elliminate this
dependency if we just parse existing source terms in the db.
test: add test for searching by source.
update TODO
source: add SourceError exception class.
source: add prototype for Source class