Remove hardcoded paths

* added helper functions to return variables for system we are running on
* removed hardcoded paths and socket type
Fixes the issue in LP #1331744 comment #2
Updated fix
more fixing
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
Merge branch 'master' into os-speciffic-vars

Conflicts:
	cmd/jujud/agent.go
	cmd/jujud/main.go
	cmd/jujud/run.go
	worker/uniter/jujuc/server.go
Added comments, removed extra variables
Merge branch 'master' into os-speciffic-vars
fixing up paths
Refactor osenv changes, add windows ver. detection

* refactored the way we get the paths based on series
* added functions to determine the windows version we are running on
* moved contents of github.com/juju/juju/version/ubuntu one level up (based on discussions with Nate)
removed commented import
Added powershell helpers

* this file contains a powershell and .NET blob needed for generating windows specific userdata
fixes based on feedback
missed 2 instances of windowsVersions
Converted map keys to constants
get value without index
use an enumerator for OS versions
change constants to use enumerator