Small issue with signatures in a TH splice (fixes Trac #8932)
Update long-out-of-date performance numbers on 32-bit

Many are improvements!
Have the parser understand the static keyword when using the StaticValues extension.
Implement renamer checks to verify that static is only given top-level value bindings.
Implement typechecking for the static form.

This patch requires an update to the base package so it includes the
module GHC.StaticRef.

The StaticRef type is made wired-in so the typechecker can use it
regardless of whether it is in scope.
Implement desugaring for the StaticValues extension.

    static f
==>
    StaticRef $
	  GlobalName "package id of f"
	             "package-installed suffix"
	             "module of f"
				 "name of f"
Make sure identifiers given to static are exported.
Add HsStatic case to coverage code.
Allow static to accept any closed expression.

Expressions are floated to top-level bindings with fresh names.
Fix T4437 so it succeeds with the StaticValues extension.
Implement tests of the StaticValues extension.
Implement tests for static values when floating expressions.
Implement test for loading symbols produced by the static form.
Shorten fresh names introduced by the static form.
Put quantifiers outside the index type of StaticRef.

Previously,

    static id :: StaticRef (forall a. a -> a)

Now,

    static id :: forall a. StaticRef (a -> a)

This allows expressions as the following

    staticLabel (static id) `staticApply` staticLabel (static "s")
      where
        staticLabel :: StaticRef a -> Static a
        staticApply :: Static (a -> b) -> Static a -> Static b
Implement template haskell support for StaticValues.
Implement -ddump-static-binds.

It shows top-level bindings produced for static values.
Write user manual section for the StaticValues extension.