Make sure libvirt VIR_ERR_NO_DOMAIN errors are handled correctly

Some libvirt VIR_ERR_NO_DOMAIN errors leak outside of the libvirt
driver, which may result in instances being set to ERROR state.

Make sure such errors are either ignored (during destroy) or
otherwise turned into InstanceNotFound errors.

Change-Id: I0ac2989062247a05162825760367488f4f90bd04
Closes-Bug: #1368404