New build system for GHCJS 8.2
---

`ghcjs-8.2` reworked the build system, and now comes with its own
small package set of dependencies. This involves autogenerating
several sources and cabal files, based on a GHC
checkout. `callCabal2nix` is off limits, since we don't like "import
from derivation" in nixpkgs. So there is a derivation that builds the
nix expression that should be checked in whenever GHCJS is updated.

Updating
---

```
$ nix-prefetch-git https://github.com/ghcjs/ghcjs --rev refs/heads/ghc-8.4 \
  | jq '{ url, rev, fetchSubmodules, sha256 }' \
  > 8.4/git.json
$ cat $(nix-build ../../../.. -A haskell.compiler.ghcjs82.genStage0 --no-out-link) > 8.4/stage0.nix
$ cabal2nix --compiler ghcjs git://github.com/ghcjs/ghcjs-base > ghcjs-base.nix
```

