Adds pre-commit hook, hook config script, and relevant README

The pre-commit hook will automatically gofmt code in place, warning you about any changes. It will also fail to commit if either golint or go vet fails.

As git hooks cannot be added to a repository in a way that automatically applies them, `configure-hooks.sh` can be ran to link this pre-commit hook.

@dmp42 @stevvooe 
For one, we can actually run `gofmt` in a way that writes its updates in place pre-commit. Secondly, I want to make sure it's clear to a user why their commit was rejected, which is a lot less obvious without all of the chrome of a CI web interface. We can also port all this syntax over to the circle.yml, but it's not very conducive for complex commands like multiline if-statements.