This commit simplifies the way that compactions across a database's keyspace occur due to reading the LevelDB internals. Secondarily it introduces the database size estimation mechanisms.
In order to run database cleanups and diagnostics, we should have a means for pruning a database---even if LevelDB does this for us.