libvirt: Use VIR_DOMAIN_AFFECT_LIVE for paused instances

When a volume is attached to a paused instance, it does not
appear in the instance's block devices list (i.e. lsblk)
after the instance has resumed. A similar situation
happens when detaching a volume from a paused instance; the
block device continues to exists in the block devices list,
where it should not.  It was found that the volume is only
persisted in the domain's config settings and not its active
settings, since only the VIR_DOMAIN_AFFECT_CONFIG flag was used
on attach and detach volume.  In order to affect the active
settings, the VIR_DOMAIN_AFFECT_LIVE flag has to be added when
attaching and detaching volumes.

Change-Id: I9c90a410a7ecb91f5a4de28acee21fe7da49242c
Closes-Bug: #1242366
Related-Bug: #1299331
Instance and volume cleanup when a build fails

On failed builds the _shutdown_instance method used to get called which
would clean up leftover instance artifacts, volume attachments, and
networking.  This no longer happens which is causing volumes to be left
in an attached state when they're not attached to anything.

Network deallocation is already handled in this code path so it should
not happen in _shutdown_instance.

Change-Id: I899b64ac5941acc282ccae7e1963d6f714c01e8b
Closes-bug: #1332198
Merge "libvirt: Use VIR_DOMAIN_AFFECT_LIVE for paused instances"
Merge "Instance and volume cleanup when a build fails"