fix(makefile): expand paths for golint

golint requires the full path to source files. It cannot handle
directories as arguments.
fix(deisctl): use docopt's native version parser
fix(client): return error if unit list is empty
fix(client): check if unit exists
Merge pull request #54 from bacongobbler/deisctl-fixes

minor bugfixes
fix(client): destroy all units if none specified
Merge pull request #55 from bacongobbler/destroy-all-the-units

fix(client): destroy all units if none specified
feat(start/stop): allow starting or stopping > 1 unit at a time
Merge pull request #53 from mboersma/parallel-start-containers

feat(start/stop): allow starting or stopping > 1 unit at a time
fix(cmd): append "@1" if none supplied to install
fix(client): dramatically simplify scaling logic
Merge pull request #56 from bacongobbler/fix-install

fix(cmd): append "@1" if none supplied to install
fix(client): destroy all units if none specified
Merge pull request #57 from bacongobbler/fix-scale

fix(client): dramatically simplify scaling logic
Merge pull request #58 from bacongobbler/fix-destroy

fix(client): destroy all units if none specified
fix(cmd): create unit files as readable to all users
Merge pull request #61 from mboersma/59-fix-template-perms

fix(cmd): create unit file templates as readable to all users
ref(client): move control plane stuff to backend

In preparation for writing tests for `deisctl`, I have abstracted the
concept of the `deisctl` client and the underlying backend clients which
deisctl talks to. In our case, we only have one, which is the fleet
backend. However, in order to properly test `deisctl`, we need to
create a new backend which we can use locally. This is a first pass
at refactoring the client in order to better flesh out these
requirements.

Note that `deisctl config` and `deisctl update` call docopt again,
therefore eliminating the need for additional parameters. This is bad,
as we cannot tell `deisctl config` to use the client's corresponding
backend. This will be addressed in another PR.

I've also removed the commands `list-units` and `list-unit-files` as
they were redundantly calling `list-units`, were undocumented, and
were not used.
Merge pull request #65 from bacongobbler/refactor-deisctl

ref(client): move control plane stuff to backend
feat(deisctl): colorize deisctl