plugins: OscXXX - warn about wavetable problems & avoid distortion

large wavetables and wavetables that are not a power of two cause some
distortion. to avoid this, we now warn about this case and output silence
instead.

fixes #720

Signed-off-by: Tim Blechmann <tim@klingt.org>
class library: Tuning - fix stepsPerOctave

steps per octave is essentially the number of steps per octaveRatio,
which means, its size

Signed-off-by: Tim Blechmann <tim@klingt.org>
class library: Scale - add *chromatic class method

create a chromatic scale for a specific tuning

Signed-off-by: Tim Blechmann <tim@klingt.org>
muladd helpers: import muladd helper classes

Signed-off-by: Tim Blechmann <tim@klingt.org>
adapt multi-channel expansion for muladds

Signed-off-by: Tim Blechmann <tim@klingt.org>
intrusive muladds: new macro for fwd definitions

Signed-off-by: Tim Blechmann <tim@klingt.org>
server plugins: intrusive muladd support for LPZ1&HPZ1

Signed-off-by: Tim Blechmann <tim@klingt.org>
class library: synthdef - optimize graph via intrusive muladds

Signed-off-by: Tim Blechmann <tim@klingt.org>
plugin interface: use template techniques to generate compute methods

Signed-off-by: Tim Blechmann <tim@klingt.org>
muladd helpers: add tagged version of wrapper

Signed-off-by: Tim Blechmann <tim@klingt.org>
plugins: LeakDC - intrusive muladd support

Signed-off-by: Tim Blechmann <tim@klingt.org>
intrusive muladds: prototype vector support

Signed-off-by: Tim Blechmann <tim@klingt.org>
plugins: intrusive muladds for LPF

Signed-off-by: Tim Blechmann <tim@klingt.org>
LFUGens - add instrusive muladd support for LFSaw, LFTri, LFCub & LFPar

Signed-off-by: Tim Blechmann <tim@klingt.org>
plugins: HPF - support for intrusive muladds

Signed-off-by: Tim Blechmann <tim@klingt.org>
plugins: adapt FSinOsc for intrusive muladds

Signed-off-by: Tim Blechmann <tim@klingt.org>
plugins: intrusive muladds - fix warnings

Signed-off-by: Tim Blechmann <tim@klingt.org>
plugins: intrusive muladds - declare ugen functions as hotspots

Signed-off-by: Tim Blechmann <tim@klingt.org>