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
but... thinking of the output, I think it would be best to have "available" before "chosen".