Live Merge: add reconcileVolumeChain verb

If a live merge operation is catastrophically interrupted (we completely
lose the host on which the VM was running during the merge) engine must
have a way to discover what happened by examining storage only.

When the active layer was being merged, it's critical to know whether
the the pivot completed or not.  Choosing the wrong leaf volume could
result in data corruption.  When an internal volume is being merged the
situation is less dire but providing a way for engine to resolve the
final status of the merge provides for a substantially better user
experience since the snapshot can be unlocked to allow a cold merge to
be attempted.

This new verb must run on SPM and is only valid for images which are not
in use by running VMs.  It will use qemu-img to examine the actual
volume chain and will correct the vdsm metadata if needed.  Finally, the
current volume chain is returned.  This chain can be used by engine to
understand what happened with the interrupted merge command.

Change-Id: Ia8927a42d2bc9adcf7c6b26babb327a00e91e49e
Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=1127294
Signed-off-by: Adam Litke <alitke@redhat.com>
Reviewed-on: http://gerrit.ovirt.org/31788
Reviewed-by: Francesco Romani <fromani@redhat.com>
Reviewed-by: Piotr Kliczewski <piotr.kliczewski@gmail.com>
Reviewed-by: Federico Simoncelli <fsimonce@redhat.com>
Reviewed-on: http://gerrit.ovirt.org/32328
Reviewed-by: Dan Kenigsberg <danken@redhat.com>