Change errors_out_migration decorator to work with RPC

This decorator in nova/compute/manager.py was written to work with
positional arguments, but at run time the decorated methods are
called via RPC with keyword arguments.  This change fixes the
decorator and the associated test cases.

Closes-Bug: #1300380

Change-Id: I9f87151a71e5217e7eff97cdc5cad2c85b620fa5
(cherry picked from commit 72cd430e971589f7872a9d4e8f173c68b4955375)
Moved the registration of lifecycle event handler in init_host()

The event handler has to be registered before the libvirt connection
is used for the first time.  Otherwise it doesn't register and events
such as shut down initiated from within the instance are not registered
in nova until a period task compares the content of hypervisor with
content of database.

Closes bug: #1297485

Change-Id: I70887bea343734a977f621fedc634b6fab0e4ad5
(cherry picked from commit 8a430da045d86ccb8daee6e082c12890ce5c5276)
Pass configured auth strategy to neutronclient

When the token is invalid Nova emits a log trace about an
unknown auth strategy (caused by neutron client). This is a
red herring and is only masking the fact that the token was
unable to be validated in the first place.

Partial-bug: 1297309

Change-Id: Ia3801f80c7ca18674fcf46b5270aa04f6c8c9331
(cherry picked from commit fdd689c146713d18eb901d6f3ec986cdd11d13fe)
Use one query instead of two for quota_usages

The second query was unnecessary and not using a proper index. It
seemed to be contributing to a deadlock issue as well.

Change-Id: I1031451b25140d71380c8149d3c83827eec0d4a9
Closes-Bug: #1308715
Co-Authored-by: Chris Behrens <cbehrens@codestud.com>
(cherry picked from commit da1fa5dc93e6e64d397e8d00769e34828669e010)
Merge "Pass configured auth strategy to neutronclient" into stable/icehouse
Merge "Use one query instead of two for quota_usages" into stable/icehouse
Merge "Change errors_out_migration decorator to work with RPC" into stable/icehouse
Merge "Moved the registration of lifecycle event handler in init_host()" into stable/icehouse