Reactjs todo list with undo support