Number locals in AST according to their locations.
Handle variable references.
Decorate IExpressions with types instead of using a stack in type checks.
Merge MainClassDeclaration and ClassDeclaration.
Method invocations and (non-array) variable references (preliminary).