Back can go to negative move numbers
Forward messes up if you play a move in between, even at the same position.
the problem is that back and forward only interact with the move number - which is fine for holding on to the current branch - but forward should go to next move only if there is another sub-branch - update the :current-branch-path if it's bigger than the current move.
Back should stop at zero, but shouldn't need to interact with the :current-branch-path, since it should hold onto the latest branch you were in.
Back can go to negative move numbers Forward messes up if you play a move in between, even at the same position.
the problem is that back and forward only interact with the move number - which is fine for holding on to the current branch - but forward should go to next move only if there is another sub-branch - update the :current-branch-path if it's bigger than the current move.
Back should stop at zero, but shouldn't need to interact with the :current-branch-path, since it should hold onto the latest branch you were in.