[r=dave-cheney] Fix build error with Go 1.3

A change that landed in Go 1.3 was an additional restriction that you could not `go install` a package if there was no source to install. Prior to this the results of doing `go install launchpad.net/juju-core` were in consistent. If you did `go install launchpad.net/juju-core/...` then the base package would fail to build, but all the sub packages would build. In Go < 1.3 this was a warning. This failure is not an error and the whole `go install` command will return exit 1.

To fix this, as well as have a nice high level description that shows up in godoc.org, add a small file at the top level so it can be built (ie, a .a file is generated) which keeps the tool happy. It is worth noting that our hacked version of the Go 1.2 build tool for ppc64el also suffers from this limitation as it is a mash up of bits of Go 1.2 and Go 1.3's build tool.

nb. Why is there no source to install ? Because the only files in that directory end in _test.go; they are test source, not package source, and test source is never installed.

https://codereview.appspot.com/100580045/
Update regex to disallow numbers at beginning
wip
tweaks
Take usagePrefix into account in log message.
Merge with latest trunk.
Test for leading numbers
Replace LoggingSuite with BaseSuite
Removed unnecessary whitespace in user command doc
[r=menno.smits] juju/cmd: introduced "user" command

"juju user" now exists. It is a SuperCommand and the existing
"add-user" command is now wired up as "juju user add" instead.

https://codereview.appspot.com/92520043/

R=dave-cheney, waigani
Ensure username is at least two chars long and ends with a letter
merge from tip
[r=waigani] Update username regex

Update valid username regex to allow '.' and '-' and ensure
username ends in a letter and is at least two characters
long.

https://codereview.appspot.com/98400043/

R=menno.smits
Sort constraints before comparing them
test that unit can AddAction, and that the Action Id is of the expected format
assert that you can add an action to a dying unit, but not to a dead one
Allow Resources to accept named resources, instead of just auto-numbered ones.

This will let us have the Pinger and DataDir as resources that can be requested,
rather than having them sneak peeks at the details of srvRoot.
gofmt!
[r=wallyworld] Replace LoggingSuite with BaseSuite

A mechanical change - the new BaseSuite is used
in place of LoggingSuite across the codebase. This
provides what LoggingSuite does but also ensures
no outgoing network connections are used and also
ensures the HOME var is cleared.

A couple of tests in cmd are left using LoggingSuite
to make it easier to extract this package separate
to juju-core later.

https://codereview.appspot.com/91570043/
Turn pingTimeout to a Resource just like the Watchers.