Change structure of the code / now use cabal to manage the project / add haddock for documentation
delete Hat