Remove hardcoded paths

* added helper functions to return variables for system we are running on
* removed hardcoded paths and socket type
wip
Fixes the issue in LP #1331744 comment #2
Updated fix
more fixing
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
Extracted machine agent test upgrade functionality

This is in prepartion for future tests which require the same
functions.
fixes based on feedback
missed 2 instances of windowsVersions
Fix test bug
Merge branch 'master' of https://github.com/juju/juju into fake-authorizer-takes-a-tag

Conflicts:
	state/apiserver/agent/agent_test.go
	state/apiserver/root.go
Remove commented out code
typo
Converted map keys to constants