Decoupled rules for lexing and parsing from interpreter, interpreter could now be used for other syntaxes. Improved API for creating rules.