mon: set tid on MMonCommandAck

Set the tid on the reply to match the request.  This will allow a client
to have multiple commands in flight.

Signed-off-by: Sage Weil <sage@inktank.com>
mon/MonClient: add mon command handling

Reimplement the ceph tool functionality to set a command to the monitor
and collect a response.

Signed-off-by: Sage Weil <sage@inktank.com>
mon/MonClient: assume tid 0 is the first command

If we get an ack with no tid, we have to assume it is the first (hopefully
only) command we have in flight.  Old code doesn't properly set the tid.

Signed-off-by: Sage Weil <sage@inktank.com>
ceph tool hack do not merge
osdc/Objecter: implement osd and pg commands

This is reimplementing the 'tell osd' and 'pg ...' commands in the ceph
tool in the Objecter infrastruture.  As a result we are forced to consider
all of the corner cases we have already handled for regular ops and
linger ops, so the result should be significantly more robust.

Signed-off-by: Sage Weil <sage@inktank.com>
more ceph tool hack to use objecter