Move the implementation of some methods into private static functions to avoid bugs having to do with "this" being used implicitly when tree traversing.  It's cleaner this way anyway.
Remove some gaphing code.  There is a module for that now.