* ci: test and rehearsal back on GitHub's runners
The self-hosted runner ran one job at a time behind a lock, so every
pull request queued for it. GitHub's runners are free for a public
repository and give each job a machine of its own.
* ci: a pull request's newer push cancels its older run
* ci: one blank line before the concurrency block
* ci: a pull request that changes only documentation runs no builds
* ci: pull requests package the three main platforms; dev and all-platforms pull requests package all six