Change libvirt close callback to use green thread

The native thread that calls the close callback is being
used to update a host's status, potentially causing threading
issues, since it involves operations that should only be
performed by green threads. This change fixes the issue
by limiting the native thread's interaction to adding data
to a queue and leaving the remaining work for
a green thread.

Closes-Bug: #1290487
Closes-Bug: #1293641

Change-Id: I59c14da15e4655dc4bf21d4de3d509472b146f7a
Merge "Change libvirt close callback to use green thread"