Implement resolution for GlobalNames.
Add mkClosure helpers.

These helpers handle for the user the encoding and decoding of
the free variables.

    closure (staticLabel $ static (\(x,y,z) -> f x y z) . decode)
            (encode (x,y,z))

can be written more succintly as

    $(mkClosureN 3 [| f |]) x y z
Implement construction of closures by quoting Haskell.