added test-suite to cabal file, made src/ and test/ dirs

Tests can now be run via:

cabal install --enable-tests
cabal configure
cabal build
cabal test

Also created a more typical project layout, with test/ mirroring src/