DEPRECATE typeRepKey
Add TH support for UNPACK pragmas (Trac #5290)

The extension is nice, because it just adds an extra
constructor to the existing data type 'Strict'.

Thanks to Mikhail Vorozhtsov.
Merge branch 'master' of http://darcs.haskell.org/packages/template-haskell
Make Typeable safe now that handcrafted instances aren't allowed.
Move GHC.Classes here from base
GHC.Classes has moved to ghc-prim
Use LANGUAGE pragmas rather than OPTIONS_GHC
Integer Eq and Ord instances are now in the integer package
Eq and Ord instances are now in the integer package, not base
Fix build following modules moving around
Follow library changes
Sync the typeable fingerprinting with GHC
Tweak the typeable fingerprinting

Put spaces inbetween the values, so e.g.
    p:Foobar.baz
    p:Foo.barbaz
will hash differently.
Follow toInt# -> integerToInt renaming
Rename toInt# -> integerToInt for consistency
Rename toInt# -> integerToInt for consistency
Simplify int2Word# . integerToInt -> integerToWord
Don't inline most integer operations

We get lots of code, and the simplifier generally can't do much with
it. We'll instead use builtin rules to do constant folding where
possible.
Add a missing implicit build dependency

This should fix:

libraries/base/Data/Maybe.hs:70:13:
    Failed to load interface for `GHC.Integer.Type'
    There are files missing in the `integer-gmp' package,
    try running 'ghc-pkg check'.
    Use -v to see a list of the files searched for.
    When deriving the instance for (Eq (Maybe a))
make[1]: *** [libraries/base/dist-install/build/Data/Maybe.o] Error 1
Add support for unresolved infix expressions and patterns.