Extract Logger class

So that we're not calling `puts`/`print` from around the codebase. This
allows us to test, and lets us silence output during test runs.

Change-Id: If557a490ecb9913a2bcef4a943a773711da25443
Reviewed-on: https://gerrit.causes.com/23030
Tested-by: jenkins <jenkins@causes.com>
Reviewed-by: Shane da Silva <shane@causes.com>
Make hooks work in absence of configuration file

This used to be an error, trying to descend into a hash that's nil.

Change-Id: I6b3305840af03a257e6dd3ce5432f83d11716bde
Reviewed-on: https://gerrit.causes.com/23031
Tested-by: jenkins <jenkins@causes.com>
Reviewed-by: Shane da Silva <shane@causes.com>
Fix SKIP_CHECKS namespacing

As part of a recent refactoring, we're now introspecting the class name
rather than looking at the file name. I missed stripping the namespace
in my specs since they were not namespaced, but our actual hooks live
under the `Overcommit::GitHook` namespace.

Change-Id: I5da9c902dae91e594a5bd379463ce3941212d78c
Reviewed-on: https://gerrit.causes.com/23043
Tested-by: jenkins <jenkins@causes.com>
Reviewed-by: Shane da Silva <shane@causes.com>