STreeMap::TakeUndoSnapshot

Grabs a snapshot of the current tree so we can restore it if the user performs an Undo action