Grotesque hack on Unsafe.Coerce

The hack is described in detail in Note [Meta-hack for coerce].
It's a consequence of this, perfectly legitimate, commit:

  commit 7a1480c7c590d4d2fa7a105a4eebf299e921e056
  Author: Simon Peyton Jones <simonpj@microsoft.com>
  Date:   Tue Jan 22 22:43:22 2013 +0000

      Allow eta-reduction of eval'd functions if of arity 1

      See Note [Eta reduction of an eval'd function] in CoreUtils.
      This doesn't fix Trac #7542, but that was the ticket that
      pointed out this infelicity.

   compiler/coreSyn/CoreUtils.lhs |   24 ++++++++++++++++++++++--
Merge branch 'master' of http://darcs.haskell.org//packages/base