Generally happens when rewinding.
Tidy things up, move logic out of SampleInfo.
Also adds support for null channels at InputDrum level.
Less static weirdness