Cleanup for new names.ActionTag refactor

hide implementation details more, rearrange code layout, simplify
Use the NewAPIClient method from the env command.
Port the plugins to not use EnvName.
Rename HydrateActionTag to JoinActionTag

update names dependencies
Merge branch 'master' into actiontag-refactor
Update Makefile with CI infrastructure changes

The CI scripts do a few hacks to our Makefile so it works better for them.
Bring in those changes, and also cut down the number of packages we install
by omitting build-essential and using the --no-install-recommends flag.
dependencies.tsv update for names package update
Ordered the lookup of machine IDs to guard against randomly ordered map key.
Merge pull request #258 from bz2/makefile_build_updates

Update Makefile with CI infrastructure changes

The CI scripts do a few hacks to our Makefile so it works better for them.
Bring in those changes, and also cut down the number of packages we install
by omitting build-essential and using the --no-install-recommends flag.
Merge pull request #259 from katco-/1329637-map-ordering

Ordered the lookup of machine IDs to guard against randomly ordered map ...

In Go v1.3, map ordering was intentionally randomized to discourage relying on maps which were coincidentally ordered how expected. This corrects a non-deterministic bug in one of the tests which was caused by this change to Go.
Merge pull request #257 from johnweldon/actiontag-refactor

ActionTag refactor leading to state package refactoring too
Merge pull request #251 from howbazaar/env-cmd-replace-open

Use the NewAPIClient method from the env command.

Another piece of the puzzle.  This is what I had hoped the entire work would be.

This work is the simple part.
Make sure the make targets check the dependencies.
Only do godeps when environment set.
Merge pull request #247 from howbazaar/make-godep

Make sure the make targets check the dependencies.

I tend to run the tests with 

```
make check
```

and I get annoyed when things are out of date.  This branch adds additional make targets to run the godeps command when building, checking or installing.
Merge pull request #260 from howbazaar/env-cmd-plugins

Port the plugins to not use EnvName.

This branch introduces another intermediate structure that provides a method to prepare the environment.
Don't pass pointers to set.Strings reference values

set.Strings is already a map type, a reference value if you like, so there is no need to pass its address, you're already passing a pointer to it.
Merge pull request #262 from davecheney/129-set-strings-is-already-a-reference-type

Don't pass pointers to set.Strings reference values

set.Strings is already a map type, a reference value if you like, so there is no need to take its address, you're already passing a pointer to it.
Use type switch in merge functions
Remove unused named return arg