Live Merge: support active layer commit

Libvirt is currently adding support for merging the active layer.  This
operation works similar to a block copy job since it has two phases.  In
the first phase, data is merged from the active layer into base.  During
this phase mirroring ensures that active IO is also directed to the base
snapshot.  Phase 1 is complete when 'cur' == 'end' in the block job
info.  Vdsm triggers the second phase of the job by calling the
blockJobAbort function with a special PIVOT flag which instructs libvirt
to pivot the disk from the active layer to the base.  Once this is
complete, libvirt will stop reporting the job and vdsm will handle
post-job cleanup as usual.

This patch depends on currently unreleased libvirt and qemu features
that are targeted for a near term release.

Change-Id: Idab76081c2d004bc4f9e5bc9cb72e86845640f6a
Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=1109918
Signed-off-by: Adam Litke <alitke@redhat.com>
Reviewed-on: http://gerrit.ovirt.org/28598
Reviewed-by: Dan Kenigsberg <danken@redhat.com>
Reviewed-by: Federico Simoncelli <fsimonce@redhat.com>