Add testsuite skeleton
Submodule split, add basic HUnit tests
Small refactorings, fix 'cabal check'
Merge testsuite branch (#1)