Subclass from AST

Mostly to make it clear that all of the node types
have a search() method.