git ignore doesn't allow ./ style paths
Port login-env-urls over to git.

we lose all the history of the changes, but at least the patch is here.
I haven't run the test suite yet to ensure that all the changes are good,
but at least the patch applies.

This changes Login to return an ENV UUID and allows us to connect
to the API server under '/ENVIRONUUID/api' style urls.
Update the URLs to be at /environment/UUID/api instead of just /UUID/api.
review feedback
Finish review comments
Make captialisation of UserAddCommand fields consistent

This makes thumper happier :)
Merge pull request #45 from mjs/user-add-outpath

Make captialisation of UserAddCommand fields consistent

This makes thumper happier :)
Update suites to use github.com/juju/testing.FakeHomeSuite.
Merge remote-tracking branch 'upstream/master' into login-env-urls

Resolve the conflicts so that it can land properly.
new location for 'names'
Rename JujuOsEnvSuite.
Merge pull request #48 from frankban/remove-fake-home-suite

Update dependencies to the last github.com/juju/testing revision.
Create JujuOsEnvSuite to host the existing logic shared in 
BaseSuite and FakeJujuHomeSuite.

Remove the (Make)FakeHome code from juju: it is now placed in
github.com/juju/testing.

The remaining bits are mechanical changes.
Merge pull request #26 from jameinel/login-env-urls

This updates all of our API URLs to embed the environment UUID. For compatibility they still support the old locations. So we now expose:
https://host:port/log
https://host:port/charms
https://host:port/tools
https://host:port/
as well as the new form
https://host:port/environment/$UUID/log
https://host:port/environment/$UUID/charms
https://host:port/environment/$UUID/tools
https://host:port/environment/$UUID/api

I believe this addresses all of the questions brought up in the previous review: 
  https://codereview.appspot.com/102920048/

This also changes Login to return the environment UUID, and the client-side code to be able to cache it and pass it back in. It updates the client to default to connecting to host:port/environment/UUID/api but it doesn't change the log,tools,charms requests (because for old servers the former will work for Login, but the latter will break). Eventually we'll want to use the new URLs for log, etc once we have a good way to determine that the server supports it.
ActionResult captures the output and state of an action

test new Action.Fail() functionality

Add some tests for Action.Complete()
Updates per review from @mjs
Add ActionResultsForUnit and ActionResultsForAction to better manage specific prefixes for filtering
Add comments to explain structure of Action.Id() and ActionResult.Id()
use errors.Errorf instead of fmt.Errorf