Add functions to map over register types in LIR.
Renamve CondMove to CondMoveLN.

CondMove should be called CondMoveLN for the sake of consistency.
Remove spurious comment.
Build the general structure of the code generator.
Make LSymAddress parametric on the register type.
Teach echoes to understand constants.

Some more tweaking and refactoring is probably required.
Move CondMoveLN closer to machine.

Teach the CondMoveLN instruction to accept only one move operand (like
x86's CMOVcc).
Lower arithmetic and bitwise operators.
Remove the CallLN instruction.
Remove unneeded ClsrSizeC constant.
ForceFn does not need to have a Rator.

We don't let constant forcing trickle down to runtime -- enforce this in
the type system.
Keep track of some needed global and local information.

The code generator needs to keep track of

    * The mapping from closure ids (ClsrId) to actual LFunction
      instances.

    * The registers free and the registers holding GC'ed objects at
      each instruction (for a precise gc).

Add the interface to be used to keep track of the above.
Add codegen support for most of LIR.