This implements message revision tracking. This is definitely a work-in-progress, but I wanted to post it since I don't know when I'll be able to work on it next (and maybe someone else can run with it in the mean time). I think this makes all of the necessary library-side changes, but doesn't do anything in the CLI to expose current revision information other than adding support for a "lastmod" query. This series applies on top of the ghost message series, but only because of trivial conflicts in the lists of features in database.cc and database-private.h. There's no code dependency.