midi bindings for envelope and delay
add selectable waveforms
attenuate signals before mixing
clean up some things in main()