Undo capabilities


Not having the possibility of Undo the application is very hard to use. If the user makes a mistake it cannot be undone.
There is a basic Undo built in that saves the whole data source of the grid before large operations but editing a cell can not be undone.
The Command Pattern (http://en.wikipedia.org/wiki/Command_pattern), or something similar, was not taken into consideration from the beginning, now it is a bit hard to introduce it.
Suggestions are needed for behavior and solutions