Initial repl client in Haskell.

Spawns `ghci` or `cabal repl` and clears the initial output, nothing
more yet. I'm not sure whether I like doing this in Haskell, because it
looks quite verbose.
Simple evaluation support.

Doesn't return error output yet.
Support returning output on error.
Use consistent naming.
Correctly indent if-then-else expressions.
Initial integration with server.
more readable variables
Properly exit the repl process.
Find the plugin on case-sensitive file systems.
Evaluate Haskell code on the server.
Only display check mark if result is blank.
Support inferring the type of an expression again.
Pass the project directory to the server.

And start the repl in that directory.
Merge pull request #30 from jetaggart/eval-in-haskell

Prototype for evaluation on the server.