Some libvirt driver lookups lacks proper exception handling

Add error handling to list_instance_uuids() and get_memory_mb_used().
While fixing list_instance_uuids, this change also removes an
unnecessary extra lookup for every running instance.

Improve test coverage for list_instances() and list_instance_uuids().

Change-Id: I0cabe5f38d19143a3eb7b2ebce1ea6ea63f36929