Memento
Describe how much state must be maintained in a memento object.
Describe the use of memento for undo features.
Contrast a memento's wide and narrow interfaces. Indicate how these might be implemented in Java and C++.