Added namespace, made AST interface better