Refactor libvirt driver exception handling

Centralize exception handling for id based instance lookups in new
method _lookup_by_id().

Change-Id: If8d215b85fabf235afcf78a9203378fbb26e68db
Register libvirt driver with closed connection callback

libvirt v1.0.1 and later support a callback to alert clients
when the connection is lost.  The libvirt driver will now
register for this callback when available so that the driver
can properly reconnect.

Fixes: bug #1154635
Change-Id: Ie5f1b69cf6f0655022148386cd2be9955d37b467
Merge "Register libvirt driver with closed connection callback"
Merge "Refactor libvirt driver exception handling"
Merge remote-tracking branch 'm_src_repo/citrix-fixes' into build-temp