Some code generation basics.
Add variable type information (formal/local/class) to AST node.
Return types, parameter types and variable declarations.