Initial commit
Made stuff more configurable.
Cabal packaging