Implement recast.visit using a new PathVisitor abstraction.
Hand-roll the hot types.eachField loop in visitChildren.
Add a simple script for evaluating recast.visit performance.
Add tests of recast.visit.