Initial implementation of repl command

No support yet for ovreriding the ghci :reload command.
No support in build or repl for module/file targets.
Not yet tested with sandboxes.
Merge pull request #1404 from dcoutts/repl

Initial implementation of repl command