Add functioning IR code generator

It is missing some language constructs (load, store, constant memory),
as well as immediates, that currently are represented as negative
values.
Positive values are physical registers.

It will propably be advantageous to allow Strings as labels in the IR,
allowing for easier distinction between immediates and temporary
variables.