Initialize all fields of BasicBlock
Initialize all fields of IdentifierTable
Remove Parser.syntax_error

Instead just throw exceptions, then the compiler knows some code paths
won't return.
Initialize Instruction.uses field
Make Parser.parse return ArrayList<Function>
Create Cmp instruction in Parser.relation
Emit Cmp instruction and branches in while stmt
Print CFG in dot format to be rendered by graphviz
Link the current basic block to the loopheader

This is in while statements
Output dominator information for basic blocks