playBeat method
Shows one beat, live — the ordinary step of a walk over take.beats.
Remembers where the beat's take time landed in reel time, which is what reelTimeOf answers from: a cue said inside a beat is walked after it, and without this it would be placed where the walk has got to.
Implementation
void playBeat(Beat beat) {
if (beat.duration <= Duration.zero) return;
_played.add((take: beat.at, until: beat.end, reel: _reel));
play(beat.duration);
}