Add `boot2docker shellsetup`

Closes #179

In this branch:

* Add the `shellsetup` command which outputs the correct environment variable export in order to use `boot2docker`. This can be used with `$ $(boot2docker shellsetup)`. The output looks like `export DOCKER_HOST=tcp://ip:port`
* Some refactoring for unit testing.
* `virtualbox.Machine` dummy.

Upon acceptance there needs to be a documentation update, or at least an issue raised for one.

**Note**: I am unhappy with the name of this command, suggestions are welcome.
My functions do not return an error, but they do check for errors and return a status code indicating failure.

I agree this is is sub-optimal, but it is the convention of the functions so far. If one wishes to change the convention, that is certainly a different issue that should be addressed in another branch.