Changes to ghc(2)

Changes to ghc:
commit cf1a0f971966af633fbd932ad012ce716680465b
Author: Simon Peyton Jones <simonpj@microsoft.com>
Date:   Fri Mar 7 16:50:17 2014 +0000

    Fix the treatment of lexically scoped kind variables (Trac #8856)

    The issue here is described in Note [Binding scoped type variables] in
    TcPat.  When implementing this fix I was able to make things quite a
    bit simpler:
     * The type variables in a type signature now never unify
       with each other, and so can be straightfoward skolems.
     * We only need the SigTv stuff for signatures in patterns,
       and for kind variables.

commit cdac487bcd9928d77738f6e79ead7b9bb4bc00fd
Author: Simon Peyton Jones <simonpj@microsoft.com>
Date:   Fri Mar 7 16:45:55 2014 +0000

    Make -XDeriveFunctor more generous about non-last arguments (Trac #8678)

    When deriving Functor, Foldable, Traversable, we need only look at the
    way that the last type argument is treated.  It's fine for there to
    be existentials etc, provided they don't affect the last type argument.

    See Note [Check that the type variable is truly universal] in TcDeriv.