librados: Expose RadosClient instance id through librados

Allow librados clients to utilize the global id of the RadosClient.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
rbd: Coordinate maintenance through object map leader

When the object map is enabled, only a single client can
modify the image.  As a result, certain maintenance activities
need to be proxied from the maintenance client to the active
leader.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
rbd: Request object map leadership if image is modified

When the object map is enabled, attempting to modify the image
data while not the object map leader results in a promotion
request to the current leader.  The current leader will demote
itself so that the other client can become leader.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>