what is the use case for this? Is it not reasonable for the nova::compute::libvirt class to always use the libvirt driver?