rewind_history() gives one row for each entry that rewind keeps.
rewind_can_undo() and rewind_can_redo() tell you if the position can
change. All three functions depend on the history. You can thus use them
in render*() and observe() to control your own UI.