SampleUtil Enhancements

Enhancements and extensions of SampleUtil. Some of the new functions are currently not used, but will be when the new SoundSource API follows. I adopted the naming "widen"/"narrow" for the conversion of signals between a different number of channels: mono --"widen"--> stereo <--"narrow"-- multi-channel

Some minor issues are fixed in separate commits.

Since this is a gain value, it deserves its own constant, 
What about CSAMPLE_GAIN_ONE. 
Since gain is not an audio Sample, we may go ahead and define an own data type for gain.