Fleshed out the CodeGenerator even more