Continue the work from:
https://blueprints.launchpad.net/nova/+spec/prep-for-network-aware-scheduling
http://specs.openstack.org/openstack/nova-specs/specs/newton/implemented/prep-for-network-aware-scheduling.html

Move xenapi_ipxe_boot_menu_url from a Nova config option to image metadata. This will allow for users to specify custom ipxe urls directly on their image when they register new images instead of having to rely on a single configuration option.

When users upload VHDs to glance, its nice not to only support OVA wrapped VHDs.
This blueprint looks to ensure:
* we check glance says its OVF or OVA before attempting to extract the image
* if there is no container_format or it is BARE, then we try to download the VHD directly
For the implementation, we will use...