mon/PaxosService: move upgrade_format() machinery into PaxosService

We originally did this in AuthMonitor, but it is perfect for PGMonitor too,
so make it generic.

Signed-off-by: Sage Weil <sage@inktank.com>
mon/AuthMonitor: start at format 1 (latest) for new clusters

Signed-off-by: Sage Weil <sage@inktank.com>
mon/PGMonitor: store PGMap directly in leveldb

Instead of encoding incrementals and periodically dumping the whole encoded
PGMap in leveldb, instead store everything in a range of keys, and update
between versions using transactions.  The per-version values are now
breadcrumbs indicating which keys were dirtied so they can be refreshed
via update_from_paxos().

Bump the internal monitor protocol version.

Signed-off-by: Sage Weil <sage@inktank.com>