Migration code for JobManageNetworking added, tests still missing.
Refactor peergrouper tests to avoid cycle imports

The tests for peergrouper, being part of peergrouper package
would trigger an import cycle if anything under apiserver
imports peergrouper.
The tests where refactored to use the export_test pattern
so all tests are under peergrouper_test package
Go formatted
Merge branch 'uniter-context-factory' into uniter-context-factory-2
Possible fix for Bug #1304126

In the SetEnvironmentCommand's Init function I added an additional API call to retrieve existing environment config.
All keys a user specifies in the "juju set-env" command are checked against the existing config keys and if the
user defined key does not exist in the existing config a warning of a possible misspelling is issued.
Fixed capitalization in some of the returned error messages.
Restructured the code so that in the unlikely event that c.NewAPIClient() returns an error, the following code will not fail/panic/etc.
Fix style-guide links

Changed links to absolute, was improperly linking to /doc/contributions/doc/contributiuons/style-guide.md
Increment juju to 1.21-alpha3
- Moved extra API calls to the Run function.
- Added a similar check for "juju unset-env", which checks if the key the user is trying unset exists in the config
  and displays a warning if it does not.
Added tests for the migration of JobManageNetworking.
Merge branch 'master' of https://github.com/juju/juju into job-manage-networking-upgrade
A proposed fix for bug #1384622

Added a check to the "juju set" command, which issues a warning to the user
if the value of the configuration option is already set to the desired value.

The check is done by retrieving the unit's configuration options via an
additional API call and comparing the user-defined value with the
existing configuration value.
provider/ec2: verify credentials early in bootstrap

Verify credentials early in the bootstrap process by
issuing a query to EC2 and checking the status code
on the response. Provide a user-friendly error message,
and log the underlying error at debug level.

Partially fixes https://bugs.launchpad.net/juju-core/+bug/1362072
provider/azure: use new in-memory cert/key API in gwacl

A third-party contribution has just landed in gwacl to
allow users to pass the certificate and key as a []byte,
rather than requiring filenames to be specified. Juju
is updated to use this, removing the need to create
temporary files, simplifying the code.
Add comments about immutability/snapshots
Merge branch 'master' of https://github.com/juju/juju into job-manage-networking-upgrade
Moved upgrade into alpha3.
utils/ssh: fix flaky run tests

Timeout should be long if the operation
is not expected to timeout.
extract paths from uniter; minor tweaks to juju-run that will hopefully make it a bit less magically action-at-a-distance