libvirt: add support for hyperv timer source with windows guests

The hyperv timer source enables Windows guests to keep accurate
time, much like kvmclock does for Linux guests. It should be
enabled for all windows guests, as it doesn't harm older windows
versions which don't know about it.

Related-bug: #1400315
Change-Id: I6af05b4e8e0b2145733c0f301c04555da23b7da8
libvirt: change representation of guest features

While the current acpi, apic & pae features are mere single elements,
further feature will require complex data structures. The libvirt
config class must thus change from using a simple string to represent
a feature, to a full class

Related-bug: #1400315
Change-Id: Ia6fa2602dd7a9e7623abcfd46c8b57d3631372ef
Cleanup in ResourceExtension ALIAS(v2.1api)

Add global variables ALIAS if it's not existing and use it in
ResourceExtension if the the alias of the extension happen to be
the same as ALIAS.

Partially implements blueprint v2-on-v3-api

Change-Id: Id6b3ecde499e9b54804175d635b89e62c1fed804
Fix ironic delete fails when flavor deleted

The ironic virt driver looks up the flavor of an instance
when it is going to delete it. This is to obtain extra
specs details that are not available in the instance details.
If the flavor has been deleted this lookup fails and causes
the delete to fail.

The fix makes the lookup include deleted flavors. Note that
extra specs handling is changing in nova, so this code is
likely to become obsolete when they are available by
other means.

Change-Id: I47ba78abfe60e82226acc6a17752db503d9f21d8
Co-Authored-By: Nicholas Randon <nicholas.randon@hp.com>
Co-Authored-By: Phil Day <phil.day@hp.com>
Closes-Bug: #1400269
libvirt: enhance driver to configure guests based on hugepages

Work-Item: Enhance libvirt driver to configure guests based on
           the flavour parameter for page sizes

Partial-Implement: blueprint virt-driver-large-pages
Change-Id: Id9d826e83f3ee5720486efb8cb0ff38c0dfcc990
Merge "libvirt: enhance driver to configure guests based on hugepages"
Merge "libvirt: add support for hyperv timer source with windows guests"
Merge "libvirt: change representation of guest features"
Merge "Fix ironic delete fails when flavor deleted"
Merge "Cleanup in ResourceExtension ALIAS(v2.1api)"