Implements an undoable event list with automatic handling of undo/redo commands
Adds an event to the top of the stack. If there are any undone events, they'll be lost. Bottom event is always lost.
Returns the length of the current stack
Redos top event.
Undos top event.
See Implementation
Implements an undoable event list with automatic handling of undo/redo commands