triggerQuickRelease only set the fade step, leaving quickFade at 1.0, so
the decrement gate (quickFade < 1.0f) never triggered and only the amp
envelope's long release played out. Gate on quickFadeStep > 0 instead so
the 250ms ramp runs and the voice is freed at the end.
- PresetManager: add ~40 new presets including a new Techno category with
LFO-to-OSC-pitch movement, plus Bass/Lead/Pad/Keys/Brass/Strings/Wind/
Arp/Pluck/FX expansions
- UI: add RANDOM button; highlight the currently selected entry in all
dropdown menus (incl. ticking the active preset in the preset browser)
- LFO depth: finer 0.001 step with a skew curve so the lower range resolves
much finer than the upper range (shared by LFO1 and LFO2)
- DSP: fade out active voices over 250ms on preset change / randomize so long
release tails from the previous sound are silenced
- Update bg.png