Lexer: First attempt at handling escapes in strings.

Issue #28.
Satisfy hlint.

String does indeed make more sense. Issue #28.
Add test program for valid escapes.

Issue #28.
Merge remote-tracking branch 'origin/master' into preproc-lexer
Lexer: Put some error messages into ErrorHandling module.

Issue #28.
Lexer: Doc fix.

Issue #28.
Add some "bad" test programs for string constants.

Closes issue #28. Escape sequences should now work!
Merge commit '9f1ba3c26726ab14061b7660e25778838825a333'