Optimize 'floating_ip_bulk_create' function

The existing floating_ip_bulk_create() DB API method used a for loop and
a session flush operation for each IP created. This patch consolidates
those many operations into a single INSERT statement, which will
perform better than multiple round-trips to the SQL database. We further
optimize the function by making a return of the changed rows optional.

Change-Id: I5cf075f38696110d2890cfa1ea488ca459d791a3
libvirt: reuse defined method to return instance numa topology

Updates code to reuse the already well defined method
hardware.instance_topology_from_instance.

Change-Id: Ia8d578bf31321475a5613a43e7fad6a71055958f
VMware: support spawn of stream-optimized image

This adds support of spawning instances using stream-optimized
disk images. This format is better suited as a glance format as it is
compressed, sparsed and optimized for streaming. The change uses the
oslo.vmware library to provide the functionality to transfer the image
to the server by importing it as a virtual machine.

Implements: blueprint vmware-vsan-support
Co-authored-by: Radoslav Gerganov <rgerganov@vmware.com>

Change-Id: I5c5c2aae733a2d55643d2ea5c293873b21325db6
Merge "libvirt: reuse defined method to return instance numa topology"
Merge "VMware: support spawn of stream-optimized image"
Merge "Optimize 'floating_ip_bulk_create' function"