Add support for GHCJS

This provides a (AFAICT) fully working GHCJS package set.

@peti Can I get your feedback on how to best merge this in? I'm sure there are some things to consider, like if/how we should specify that a given package supports GHCJS (or more generically, any particular compiler).
@peti What @ryantrinkle said. To be a bit more specific:

* The bootstrap process wants to dump the binaries into `~/.ghcjs`, so I patch that to be `$out` in the derivation.
* It wants to checkout stuff directly from git, which I patch out for the sake of purity.
* It wants to use `git apply` using a three-way merge strategy, but git won't be happy about that, given that the files in question won't be in a git tree (due to our `.git`-less checkout).