basic tree traversal and can insert a function call after definition
gets parse and deparse