Made couple tidy ups in Reload

Made a new function `reload', moved out `Sound.OSC.pauseThread' from reloading
works.

Removed forking functions, re-export 'forkProcess' from System.Posix.Process,
which was working for reloading actions.

Renamed 'HasFallback' to 'MonadReload'.
Moved out OSC related functions from Reload
Removed comments
Update base dependency version
Use monad-reload package
Added monad-reload package
Minor update in cabal config

Sort the order of packages alphabetically.
Initial addition of hs-repl-server
Added emacs lisp
Catch user interrupt

Catch `UserInterrupt' exception from ghc loop, throw to main thread to kill the
server with `C-c'.

Minor edit in Emacs lisp.
Added function to send line

Added function and key binding for a function to send current line to
hs-repl-server.
Added functions to import and load module

Handle 'import ...' statement and ':load ...' in REPL loop.

When the REPL get 'import ...', will try to import the module. With ":load ...",
REPL will try loading the module.
Catch exceptions in replStep

Removed scattered gtry and gathered gcatch in repStep.
Added function to with `runDecls'

REPL server understands declaration of functions and data types.
Use IORef instead of MVar in server's global HscEnv.
Module tidy up

Renamed "Callback.hs" to "Global.hs".
Minor tidy up
Handle multiple-line input

Error messages are still unfriendly.
Added callback function

A function named `callback' will be declared at the time of server startup. This
function sends a Haskell source code to the running server itself. Concurrent
actions are not yet working.
Removed unused codes
Introduced ByteString