Patch Set 4: (1 inline comment)

Yea, immutable objects work well... usually.  Here DeltaVisit is almost immutable, but its not where we implement tail recursion, and the list of children that need to be processed, because those are faster to be mutable.  The Java GC is good, but its not *that* good.