Tests now passing again.
Merge remote-tracking branch 'refs/remotes/origin/master' into leadership-integration-tests

Conflicts:
	cmd/jujud/agent/agent.go
	cmd/jujud/machine_test.go
Version detection for CentOS 7

* Detect when runing on CentOS 7
* This commit also makes all tests pass on CentOS
Move environment get/set/unset into a subcommand.
Fix up command registration.
First changed tests due to new gopkg.in/yaml.v1 version.
Merge branch 'master' of https://github.com/juju-actions/juju into fix-yaml-v1-tests
separate metrics code/tests; move helpers from uniter_test to util_test
drop uniter_old_test, move components into uniter_test and util_test as appropriate
Add force reconfig of peergrouper

When restoring sometimes we need to re-set peergrouper
even if there is a configuration in place.
Fixes after review.
remove extra quotes
Remove unneeded imports.
Merge branch 'master' of https://github.com/juju-actions/juju into fix-yaml-v1-tests
Split into text, YAML and JSON tests and used the new checkers.
Merge branch 'master' of https://github.com/juju/juju into fix-yaml-v1-tests
Added tests for initiatemongoserver

Added tests for initiatemongoserver, formerly known
as MaybeInitiateMongoServer but now supporting a force
parmeter.
I also added an error that is returned when a replicaset
is found in order to add more transparency.
testing: Update MakeEnvironment to take CofingAttrs

Update the testing factory function MakeEnvironment to take a new parameter: ConfigAttrs. ConfigAttrs is a map of environment configuration attributes which override the factory defaults.
Fixed newline in test data.
Mechanical refactoring complete.

This is only the fisrt phase designed to extract some functionality out of the main namespace and into its own package. Subsequent commits will massage this code into a more desirable state.