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.

It's used by one of the decoders to fill the buffers with 0 before and past the actual file length. Maybe I forgot to commit those changes, because they are hidden in the API refactoring stuff. Currently a simple loop or memcpy is used.