Haskell lexer

* Fixed line counting
* Fixed string escaping
* Pragmas ending at start of the line are rejected (GHC only accepts pragmas with the end indented further)
* Copied Python's Folder
* Converted Haskell lexer to a class
* Removed external lexer
* Haskell lexer now folds imports