Aggregate Undo Actions

Added a class and helper for aggregating undo actions together.