More work on the compiler.

Far from being finished.