allow `free-4.6`
Change test to a cabal test-suite

This way (1) the tests can be run with 'cabal test', and (2) users do
not have to install the tests and all its dependencies by default.
Merge pull request #10 from byorgey/master

A couple tweaks