Fixed few things in haskell lexer

* MagicHash now applies to literals.
* MagicHash is now only allowed at the end of identifier.
* SafeHaskell imports are now highlighted (lexer.haskell.import.safe)
* TemplateHaskell quoted names are now highlighted
* Constructors promoted to types are now highlighted
* Promoted tuples, lists, and operator constructors are now highlighted.
* Qualified constructor are now properly highlighted as constructors, not operators.
* Capital and qualified names in import lists are now properly highlighted.
* A.$b is not properly highlighted as an operator and an identifier, not just operator.
* String and preprocessor continuations now work with CRLF.
more properties