LiveMerge: Sync volume chain information after live merge

When a block job event comes in from libvirt or when vdsm notices that a
block job is no longer running on a disk, we need to check the volume
chain according to qemu and sync our vm state with that information.

The items that require synchronization are:
 - VM.conf['devices'] and VM._devices:
   * Update volumeID if the active layer was merged
   * Update volumeChain to remove merged volumes
 - Image chain
   * If the merged volume(s) had children, the child's parent UUID must
     be set to point to its new parent.  For file-based domains, this
     update can be completed immediately.  Block-based domains maintain
     the parent UUID in two places: the storage domain's metadata LV and
     as a LV tag on the volume LV itself.  As HSM we can update the
     metadata LV but the tags cannot be changed except by SPM.  So,
     split setParent into two parts so we can update just the metadata
     LV here.  We will let deleteVolumes clean up the LV tag since it is
     an SPM operation.

Change-Id: Ib86c19077695354b45818e0186e642ad0e8bc07c
Signed-off-by: Adam Litke <alitke@redhat.com>
Reviewed-on: http://gerrit.ovirt.org/26636
Reviewed-by: Dan Kenigsberg <danken@redhat.com>
Reviewed-by: Federico Simoncelli <fsimonce@redhat.com>