Guest-assisted-snaps libvirt implementation

This implements volume_snapshot_create and volume_snapshot_delete
methods which create snapshots of QCOW2-based Cinder volumes.

The update_snapshot_status API from cinderclient is used to
inform Cinder of the result of these operations.

This feature requires a minimum libvirt version of 1.1.1 due
to a bug in libvirt BlockJobInfo handling in earlier versions.

Libvirt implementation for blueprint qemu-assisted-snapshots

Change-Id: I76eb2e4da027a13525314bd58264f482374d270d
add cinder test
test work
disk xml processing
nova temp