Added basic doc for HA
Added singleton and voting sections and corrected

I addressed several redaction issues and added sections for
voting and singleton workers as commented by @rogpeppe
Made gramatical corrections suggested by @mjs
added dry run support for upgrade-juju
simplified upgradejuju dry run test
changed upgrade-juju dry run option to --dry-run
Added note on singleton vs concurrent

After talking with @fwereade I added a note explaining that
singletons, as they are documented righ now, are only a reflection
of current status but should be considered as wrong and will be
re-implemented properly, as concurrent workers, in the future.
Corrected two gramatical errors
added log to intruct the user how to run this command to update to a particular version
made output prettier based on fwereade's feedback
removed commented out line in upgradejuju_test
Ensure availability command output.
Report result type error.
Json encoding specifiers for api structs.
Rename EnsureAvailabilityParams to StateServersSpec.
Rename EnsureAvailabilityResult to StateServersChange.
Merge pull request #64 from mattyw/upgrade-dry-run

added dry run support for upgrade-juju

Fix for https://bugs.launchpad.net/juju-core/+bug/1272544.

Added a --dry flag to the upgrade-juju command. When --dry is specified the action to be taken is output to Stderr. Added two tests to check that this information gets output and that the agent version's aren't changed after running the command with --dry
State EnsureAvailability call returns changes structure.
Added promotion and demotion information to ensure-availability output.
Tag-Id separation in ensure-availability.
Tags instead of ids.