Fix bug with not implemented virConnect.registerCloseCallback

The unit test test_connection_to_primitive fails many times due to
"virConnect instance has no attribute 'registerCloseCallback'".

registerCloseCallback has been added since original(community's)
python-libvirt v1.0.0, and v1.2.0 also contains the method.
However ubuntu cloud's v1.0.1 does not contain the method, and current
version check of python-libvirt does not work.
This patch tries to operate the method and catch TypeError exception if
the method does not exist instead of the version check.

Conflicts:
        nova/tests/virt/libvirt/test_libvirt.py

NOTE(mriedem): The conflict is due to set_host_enabled
calls which aren't in stable/havana.

Co-Authored-By: Sahid Orentino Ferdjaoui <sahid.ferdjaoui@cloudwatt.com>
Closes-Bug: #1266711
Change-Id: I4ec9ff9a684639ae5b146f400c90115c83afcda7
(cherry picked from commit 85068cc9f68aa704895ffe5ac185bb9cf7d05e2d)
Merge "Fix bug with not implemented virConnect.registerCloseCallback" into stable/havana