Add a comment discouraging the use of `toGhcMod` in new code
Update .travis.yml

- Travis-ci now supports testing multiple ghc versions out of the box.
- Don't bother running the tests in tree and go straight to testing from
  the tarball realease
Add workaround for #277
Merge pull request #278 from DanielG/dev

Various changes
Show more relevant bindings in typed holes
ghc-debug displays PATH env.
removing a warning of elisp.
We really don't want mtl < 2.0 (different API)
Add newGhcModEnv for allowing multiple active sessions

Conflicts:
	Language/Haskell/GhcMod/Monad.hs
Merge pull request #280 from DanielG/dev-monad2

We really don't want mtl < 2.0 (different API)
Migrate the remaining parts of the exposed API to `GhcMod a`
Merge pull request #281 from DanielG/dev-monad

Migrate the remaining parts of the exposed API to `GhcMod a`
Control.Monad.Trans.MonadIO -> CoreMonad.MonadIO

they are different before ghc 7.8
Merge pull request #283 from DanielG/dev-monad

Control.Monad.Trans.MonadIO -> CoreMonad.MonadIO
Make GhcMod a special case of GhcModT

i.e. turn GhcMod into a monad transformer
whitespace
Merge pull request #284 from DanielG/dev-monad

Turn `GhcMod` into a monad transformer
Add `Module` type
ver bumps up.

Major version is now 5 because of a lot of API changes.
Fix GHC 7.8.3: MatchGroup now has 4 args

Rather than use a pattern match, this patch opts to explicitly extract
the fields of interest using where syntax. This keeps compatibility
across GHC 7.8 releases.

Ref: https://github.com/ghc/ghc/commit/eeaea2df3fa585db503034f419c6e4331a4d8a84#diff-259092edcc59456f526cdef255c181d1L909