Changes to ghc(7)

Changes to ghc:
commit cde88e20a880a5240831c330191610d536e48ccf
Author: Joachim Breitner <mail@joachim-breitner.de>
Date:   Tue Feb 11 11:24:28 2014 +0000

    Test case: Looking through unfoldings when matching lambdas

commit a27b2985511800fa3b740fef82ad3da9c8683302
Author: Joachim Breitner <mail@joachim-breitner.de>
Date:   Tue Feb 11 10:42:50 2014 +0000

    Use exprIsLambda_maybe in match

    when matching a lambda in the template against an expression. When
    matching, look through coercions (only for value lambdas for now), and
    look through currently active unfoldings, if these are undersaturated,
    i.e. produce a lambda.

    This replaces the existing, somewhat fishy eta-expansion.

commit 377672ae068f6dbfa0354dfab95f41bdd26b0df4
Author: Joachim Breitner <mail@joachim-breitner.de>
Date:   Mon Jan 27 10:36:34 2014 +0000

    Test case for RULE map coerce = coerce

    (This tests #2110.)

commit 8f16233c154ab0645c4b90f0e4e98204650811c1
Author: Joachim Breitner <mail@joachim-breitner.de>
Date:   Fri Jan 24 13:39:11 2014 +0000

    Add Case TyConAppCo to match_co

commit d557d8c34b80a9513b6ea36aeab6453173d83fa3
Author: Joachim Breitner <mail@joachim-breitner.de>
Date:   Fri Jan 24 13:35:21 2014 +0000

    In simpleOptExpr, unfold compulsary unfoldings

    such as that of coerce.

commit f4fb94f366cc3c25f0d77e977611105ac75d9aa5
Author: Joachim Breitner <mail@joachim-breitner.de>
Date:   Fri Jan 24 13:34:50 2014 +0000

    In CoreSubst, optimize Coercible values aggressively

    just like boxed type equalities.

commit b4715d67ae90f4cc847daa94f0fc056a40057d65
Author: Joachim Breitner <mail@joachim-breitner.de>
Date:   Fri Jan 24 13:33:37 2014 +0000

    Replace forall'ed Coercible by ~R# in RULES

    we want a rule "map coerce = coerce" to match the core generated for
    "map Age" (this is #2110).