* add support for choose which go binary to run
* make the compiler configurable
* add a cli flag and update docs
* use go version as part of the binary hash
* add go version to what we display in mage -version
We now create the context in the mainfile, so as to remove any dependency on
the mg library, since the user may have an older version vendored, that doesn't
have the Context function.
ALso added a test to ensure that we don't import any non-stdlib libraries in the
mainfile to avoid problems like this in the future.
* Helpers galore
This commit adds helper functions that should be commonly needed
by many magefiles. It includes command execution handlers as well
as error handlers.
This commit also removes the only two non-stdlib dependencies in
the codebase. Since mage will likely be vendored into a repo,
it would be nice to avoid cluttering the vendor directory with
dependencies that are only for the build script.