Make master and headphone delay persistant
Merge pull request #235 from daschuer/persistant_co

Persistant co
code improvements for 5476daa - rryan suggestion
remove block handled in 403dbfc - rryan suggestion
Revert "Structurally dead code - remove unused/unreached 'return'"

@rryan: This is library code (imported from elsewhere) so I'd prefer not modify it so minimize diffs if we re-sync later.

This reverts commit a204bf8c0db422961e76dcc77aba0d0e9c3d416b.
Ramp Dry value on change
Some fixes to how EngineVinylSoundEmu gets its speed data.

* Revert rateEngine changes I made in November to rate-limit to 10FPS.
* Don't use rateEngine anymore in EngineVinylSoundEmu (we could remove it?).
* Use speed instead of rate in EngineControl::pickSyncTarget (since rate
  includes baserate and is an internal detail of EngineBuffer).
WIP: Fix GLSL renderer.
Tweak alphas to match GLWaveformRendererFilteredSignal.
Make framebuffers 4x the size of the widget and downsample with linear interpolation.
Add logic to WaveformRendererSignalBase to get per-band gains.
Make right-clicks on the GLSL widget call debugClick().
Delete max-signal shader because we don't need 2-passes anymore.
No need for visual indices when rendering the final quad.
Pop matrices after we push them.
Allow user to select Soundtouch or Rubberband
Clean up keylock preference code based on review notes.
Draw the horizontal axis in GLSL waveforms.
Remove some old comments and use the common gain calculation method.
Use WaveformRendererSignalBase::getGains to calculate signal gains in all renderers.