This is one version of tic tac toe game which has undo functionality. It shows how simple is to implement undo/redo/reset functionality. Elm rocks !!
elm-make src/Main.elm --output=main.js
Open the index.html file in a browser or just spawn a http server