added apiserver and api client implemenation of change password.

Added the change-password user command
feedback from review

added more tests to the change-password command
Added --generate and --password flags.

Try to revert the password if the environinfo write fails
Take a tag not a string
firewaller.Unit takes names.Tag
firewaller.Machine takes names.Tag
firewaller.Machine takes names.Tag
more string -> Tag conversions
Move string -> Tag conversions.
More string -> names.Tag work
Merge branch 'master' of https://github.com/juju/juju into 114-state-accessors-take-tags
Merge branch '115-state-string-tags' into 114-state-accessors-take-tags
Use concrete types rather than names.Tag interface
fix todo
client side of NetworkInterfaceWatcher
cleaned up the change-password jenv file interface, simplified the usermanager test

use readpass from latest utils
the first implementation
Refactor Action, per new names.ActionTag changes, and to improve internal structure
Merge remote-tracking branch 'upstream/master' into 122-state-machine-watchinterfaces
changed to WatchCollection