fix(trail): quote the git switch hint and split trail create

main

Commit

peyton-altyesterday

The Next and checkout-failure hints put the branch name into a shell command unquoted; git allows metacharacters in branch names, so a pasted hint could run something else. Quote it for the user's shell when it is more than a plain name, as the link retry hint does.

Move the repository-scoped and unscoped create paths into their own functions; the added checkout handling had pushed the command's cognitive complexity over the gate.

Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com Claude-Session: https://claude.ai/code/session_01XJeHKftfKHD7hSi6ZxJww8 Entire-Checkpoint: 01M6KR4YGZVBS209ZN2YFN0HTC