*Usually* we need Xapian's replace_document() API, but when we know a
document (message) is completely new, we can use the faster
add_document(). That is the case with the initial (re)indexing, when
start with an empty database.
Also a few smaller cleanups.
XapianDb is a fairly thing wrapper around Xapian, which handles locking,
exception handling and some tracking.
On top of that, Config add a configuration database for type /
introspectable configuration info.