[r=dimitern] state: Add SetEnvironAgentVersion
Implemented a SetEnvironAgentVersion state call, which:
1. Ensures the current environment has a valid agent-version;
2. Finds all machines and units in state that have an empty
or different tools version;
3. Changes the agent-version in the environment, asserting it
haven't changed in the mean time.
This is a prerequisite step to changing upgrage-juju command
to default to major.minor+2 steps, unless forced with --version.
https://codereview.appspot.com/14486043/
R=fwereade, rogpeppe