Buffer migration keyed off the active buffer's repo, so a switch made from
an unrelated buffer moved nothing and said nothing.
- Match each buffer against the target's own worktree list, longest root first.
- Warn when open buffers all live outside the repository.
- Capture and restore the cursor per window, not once from the first one.
- Clamp restored cursors to a line the destination buffer has.
Signed-off-by: unkin-agent <unkin-agent@unkin.net>
Adds a telescope picker over 'git worktree list --porcelain'. Selecting an
entry cds to that worktree and re-points every open buffer at the same
relative path there, keeping cursor position and refusing to clobber
unsaved work.
Signed-off-by: unkin-agent <unkin-agent@unkin.net>