Force the SSH commands to use their default language

SSH commands often have to parse an output and do some pattern matchings
(e.g using grep) that makes those commands dependent on the system
language and causing it to fail on systems with a non-english locale
setting.

This patch forces the SSH commands to use their default language
(whatever language the strings in the application was written in) for
output by passing LC_ALL=C as part of the command. For virsh, vmware,
vbox and prlctl the default language is english making the commands from
the SSH driver to work independent of the system language.

Closes-Bug: #1373671
Change-Id: I175d84fca4e10b8c9468bc4fe54ecd865725e39c
Add HashRingManager to wrap hash ring singleton

Currently, the API service creates a new hash ring on every request.
Instead of that, we should cache the hash ring object -- but we should
also expose a way to refresh it when necessary. This method will also
be used by the ConductorManager to cache and refresh the hash ring
when conductors join / leave the cluster.

This patch preserves the existing API behavior by resetting the hash
ring on every request. This should be addressed in a subsequent patch.

Co-Authored-By: Devananda van der Veen <devananda.vdv@gmail.com>
Change-Id: Ib7ab55452499d1e1c362e4cd127f1e6e38106d6c
Stop running check_uptodate in the pep8 testenv

As per this discussion on the mailing list:
  http://lists.openstack.org/pipermail/openstack-dev/2014-September/047160.html

We are going to stop enforcing the correctness of the sample config
file, and move to a separate non-voting check test that notifies us when
it is no longer accurate, thus prompting a human to correct it.

This addresses the issue where config options in dependent libraries
(eg. keystone) repeatedly break our gate, without removing the sample
config file that deployers benefit from.

Change-Id: Ief88a693e4967b32f5f2f71b9a683599527a5129
Always reset target_power_state in node_power_action

Currently under some conditions target_power_state can be left
on the node, making it impossible to operate on via API.

Change-Id: Iba92c9bfae3616661cadf602618a66d2664264ee
Closes-Bug: #1375641
Merge "Stop running check_uptodate in the pep8 testenv"
For convention rename the first classmethod parameter to cls

This is a follow-up patch on 9de2d21a96f440807b9822173de3fd3b6119fbe8

Change-Id: I043cc279dce7e2dbf9511a2f23c443c438affb51
Merge "Always reset target_power_state in node_power_action"
Merge "For convention rename the first classmethod parameter to cls"
Merge "Force the SSH commands to use their default language"