expand AST node interface
even moar docs