mds: Add encode/decode/dump for use with dencoder

This is for the MDSTable subclasses: AnchorServer,
SnapServer, InoTable.  AnchorServer was partially there
but didn't work in practice dumped objects because of
the version prefix on the object.

Signed-off-by: John Spray <john.spray@inktank.com>
mds: Table read failure should log at error level

Signed-off-by: John Spray <john.spray@inktank.com>
mds: Fix Dumper shutdown

It was shutting down messenger before monclient.  This
caused a sometimes-assertion when monclient tried to
reconnect in response to ms_handle_reset.

Signed-off-by: John Spray <john.spray@inktank.com>
mds: Fix crash on "mds stop" of rank 0

Previously could reliably hit assertion by
doing "set max_mds 0" then "mds stop 0".  The
Journaler was trying to use the Objecter after
it had been shut down by suicide().

Signed-off-by: John Spray <john.spray@inktank.com>
mds: Remove hardcoded pool ID in Dumper

Instead, get a copy of the MDS map at startup
to learn the ID of the metadata pool.

Signed-off-by: John Spray <john.spray@inktank.com>
mds: Create MDSUtility as base for Dumper/Resetter

These classes has lots of similar functionality and we may
want to add more similar things in the future.

Signed-off-by: John Spray <john.spray@inktank.com>
mds: Add dump-journal-entries

This adds a somewhat-human-readable peer to
the 'dump-journal' command.

Signed-off-by: John Spray <john.spray@inktank.com>
HACKHACKHACK InoUtility
HACKHACKHACK use Rados() instead of objecter in InoUtility
HACKHACKHACK add cephfs tool