Added some text massaging features to make the haskell repl easier to use

This commit contains two new options for the Haskell repl, both of which are off by default:
1) format_multiline which automatically wraps multiline text with :{ and :}
2) format_trim_whitespace which removes the lowest common number of whitespaces and empty lines in order to make block execution work well.