add Executor constructor and save StorageList after every execution
made undo as a implementation inside interface