Snapshots

Added saving and loading of snapshots (similar to an undo function).