Renamed FormElement to Statement.
Split the ASTNodeVisitor into StatementVisitor and ExprVisitor.
Removed the ASTNodeVisitor interface.
Removed the ASTNode interface because it isn't used anywhere.
Renamed the abbrevations to their full names.
Instead of forcing the StatementVisitor to return an implementation of Type to conform to the interface, made it's return type Void and returned null.
Renamed the abbrevations Bool, Int and Str to Boolean, Integer and String.