VMware: Do not read opaque type for DVS network

Save backend calls when using DVS VIF type. There is no need to
get the opaque network in the event that we have a DVS network.

Change-Id: I75973005193f862dfde3b99167cb53d3114a8349
tests: fix test_compute to have predictable service list

The _create_service_entries() method in test_compute.py accepted
a dict for the list of services. The tests would then pull out
the first item in the list of keys of the dict. When the python
hash seed is set to a random value the list of keys has no
predictable ordering, causing the test suite to break. Changing
the data structure to use a list of lists instead of a dict
ensures strict ordering.

Related-bug: #1350287
Change-Id: I01a0d4cfb086eb94b49d25b65daf08e55e2087b4
Remove concatenation with translated messages

Translated messages should not be expanded by concatenation.  Instead
the additional text should be replacement text or part of the translated
message to allow the translators as much information as possible when
doing the translations.

Also, when lazy translation is enabled, the object returned does not
support concatenation and raises an exception.  Thus this patch is
needed to support blueprint: i18n-enablement.

This patch includes a hacking check for concatenation with a translated
message.

Change-Id: I8b368d275faa14b4750735445321874ce1da37d5
Partially-Implements: blueprint i18n-enablement
Add functions to setup user namespaced filesystems

When using user namespaces, the contents of the container's
file systems need to be owned by the targeted user on the host.
These functions will change the ownership of the files in the
filesystem to the proper owners.

For example, when mapping root in the container to user 500
on the host, the contents of the filesystem owned by root need
to be changed to be owned by user 500.

Partially implements: bp libvirt-lxc-user-namespaces

Change-Id: I78afc2686f17b5e5ec740a3d0a1963df7cc92755
Changes V3 evacuate extension into v2.1

This patch changes v3 evacuate API to v2.1, and also share v2.1 and v2
test case.
The differences between v2 and v3 are described on the wiki page

https://wiki.openstack.org/wiki/NovaAPIv2tov3 .
Partially implements blueprint v2-on-v3-api

Change-Id: Ib105e367be5a921f1b9cade51204b224d99343ec
Adds Hyper-V soft shutdown implementation

This commit gives the Hyper-V guest VMs a chance to
shutdown gracefully within a time limit, doing a
hard shutdown if they fail to do so.

Partially-Implements: blueprint user-defined-shutdown

Change-Id: I68361ab43d8bba96af063b2ec53f89833a30d02a
Merge "VMware: Do not read opaque type for DVS network"
Merge "Adds Hyper-V soft shutdown implementation"
Merge "Remove concatenation with translated messages"
Merge "Add functions to setup user namespaced filesystems"
Merge "tests: fix test_compute to have predictable service list"
Merge "Changes V3 evacuate extension into v2.1"