generalized semantics of DebugDumpHandler.close() to mean reset so that closing a handler flushes and releases all its resources but leaves it operational (i.e. subsequent uses will (re)create and (re)open the required resources)
converted use of '==' to .equals() to support replay compilation
made lambdas stored in Nodes be Serializable
use deterministic iteration-order data structures
use better types to simplify instantiation of Serializable lambdas