Provide initial support for "cabal repl" process type

Two new customization flags are introduced:

- `haskell-process-path-cabal`, and
- `haskell-process-args-cabal-repl`.

Also, a new `cabal-ghci` choice for the `haskell-process-type` option
is added.

When using "cabal repl" mode, the workaround of sending a `:cd`
command on session start as well as adding the autogen-path to the
include path is suppresed, because "cabal repl" takes care of this
already.  Hopefully, we can remove those kludges required by
`cabal-dev`/`cabal-ghci` at some point.

This commit addresses #195.
Fix type of `haskell-process-args-ghci' defcustom