Also refactors the whole method to generally clean things up. One more
important fix is setting the frequency on the channel before starting
playback, so avoid the frequency potentially being adjusted after the
playback is already started.
These tests were manually pushing the `PlayerLoader` / `Player`
instances to `SongSelect`, which bypasses safeties in place which avoid
the exact issue that came up in https://github.com/ppy/osu/runs/2951759236
(see `AllowSelection` flag specifically).