Deactivate workers for windows

Authenticationworker and rsyslog workers are not supported on windows yet. The authentication worker will be ported on windows to add support for winrm. Rsyslog is not supported on windows yet.
Add no-op worker
Reverted cmd/jujud/unit.go
Added named pipes support

This branch replaces unix sockets with named pipes on windows.
wip
environs/config: introduce config.UUID()

Introduce `config.UUID()` method to access the uuid of the environment.

A uuid is the canonical indentifier for an environment, and superceeds the environment's name.

For backwards compatability, `config.UUID()` is currently permitted to return "", but once all environments are converted to have an environment uuid in place, this method will change to return a valid uuid for a valid config.
Merge branch 'master' of https://github.com/juju/juju into 150-environs-config-grow-a-uuid-method
Permit uuid to be set if unset, otherwise refuse to set it.
Merge branch 'master' of https://github.com/juju/juju into 150-environs-config-grow-a-uuid-method
Merge branch 'master' of https://github.com/juju/juju into 150-environs-config-grow-a-uuid-method
Avoid the possibility of returning a typed nil.
Update names package usage, fix tests broken due to introduced env uuid checking.
Merge pull request #390 from howbazaar/fix-explosion

Avoid the possibility of returning a typed nil.

The test asserts "gc.IsNil", unfortunately this let a typed nil through.

The caller of this was doing "if info != nil", the typed nil is != nil, so it blew up on the second part.

We can't change the test for this until we write jc.IsNil that asserts a nil interface if the result is an interface, rather than just the value part of the interface.
Merge pull request #393 from tasdomas/names-update

Update names package.

New version of names package provides stricter environment uuid checking.
Do not clone db sessions in state watcher
Merge pull request #396 from wallyworld/no-session-copy-in-watcher

Do not clone db sessions in state watcher

Fixes https://bugs.launchpad.net/juju-core/+bug/1348032

Do not copy sessions when doing watcher queries.
Merge pull request #287 from gabriel-samfira/windows-jujud-machine

Deactivate workers for windows

Authenticationworker and rsyslog workers are not supported on windows yet. The authentication worker will be ported on windows to add support for winrm. Rsyslog is not supported on windows yet.

This pull request depends on https://github.com/juju/juju/pull/244
Merge pull request #302 from gabriel-samfira/named-pipes

Added named pipes support

This branch replaces unix sockets with named pipes on windows.

The "sockets" package name is temporary. It should be named something else that denotes that it will only dial either unix sockets or named pipes. Dialing TCP sockets works the same on both windows and linux.
environs/configstore: make Default a variable
Merge pull request #397 from rogpeppe/013-configstore-default

environs/configstore: make Default a variable

It's useful for testing purposes.