keep nodes in free_nodes for HOLD_TIME, not VTIME
_update_children should be recursive