Thorough refactoring.
Add Context class that supports all the fields the StandardVisitor had before, because the latter is intended to only be used while the AST is constructed, not during compilation.
Add LiteralExpression class, that acts as a super class to the Literal classes, which removes quadruple common code.
Move multiple utility classes from compiler.helper to compiler.util, and rename them to *Util to reduce confusion with the compile helper classes.
IfExpression and EachExpression are now counted as statements, like they are made by the grammar. Control flow statements are moved to compiler.control.
Add Configuration class to compiler that currently covers the amount of printed debug information.
Add discardPrintOutput context flag (Not used yet).
Remove superfluous visitFrame calls.
Rename getMethod to getMethodVisitor (now in Context as well) and rename all local variables to mv. This was done to reduce the possibility of confusion between the method visitor and a simple (perhaps compiled or external) method.
Optimize imports (with IntelliJ Idea).