replace Context with SymbolTable and Variables.  replace analyze() methods with compile() method.  add AbstractNode base class.