Adding memento pattern implementation to have save / restore capability.