Command invoker for easy implementation of undo/redo
github.com/fingerartur/command-invoker
fingerartur/command-invoker