Wrap Haskell tools to find GHC packages

Several Haskell tools that use GHC are missing the environment wrapping required to find Haskell packages:
* `ghc-mod` was correctly wrapped, but not `ghc-modi`
* `haddock` was wrapped prior to 2.10, but not since then.
One issue I see with this patch is that Haddock is hard-coded to look for patches that belong to the GHC version with which it was built. It's possible that people have a Haddock version in their profile which was compiled with a compiler other than the one they're using to build their code. I suppose that's not likely to happen, though.