Refactoring and better documenting comments.
Some refactorings.
More refactorings.
More refactoring.
More refactorings.
Updated cabal file with recommendations from cabal check.
Hlint suggestions.