Blip band limited impulse oscillator, numharm, mul, add)

Band Limited ImPulse generator. All harmonics have equal amplitude. This is the equivalent of 'buzz' in MusicN languages. 

WARNING: This waveform in its raw form could be damaging to your ears at high amplitudes or for long periods.

Implementation notes: 

It is improved from other implementations in that it will crossfade in a control period when the number of  harmonics changes, so that there are no audible pops. It also eliminates the divide in the formula by using a 1/sin table (with special precautions taken for 1/0).  The lookup tables are linearly interpolated for better quality.

(Synth-O-Matic (1990) had an impulse generator called blip, hence that name here rather than 'buzz').

freq - Frequency in Hertz (control rate)

numharm - Number of harmonics. This may be lowered internally if it would cause aliasing.

// modulate frequency

{,200,6),100,0.2) }.play;

// modulate numharmonics

{,,100,20),0.2) }.play;