Refactor of LLVM type generation (separated from main code generation).
Converted codegen.ml to use Core library. Unhappy about the number of labelled arguments that seem to need to be explicit to make typing work...
Split out transition generation from main code generation, and fixed multiple definitions bug (#2).