Add test coverage library

The library of choice is `cloverage`. It seems quite nice.
Improve flexibility of tests

By wrapping all tests in `deftest`, they work with both `lein midje` and `lein test`. This makes interoperability with cloverage much easier (and also means people expecting `lein test` to work will not be disappointed.)
Test the `-main` function

This simply tests whether it runs without error. It does not address the quality of the output.

This is a good first step towards issue #13.
Merge pull request #14 from tidbytes/feature/13-test-coverage

Hopefully this brings `master` back on track.