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.

Sorry, Ryan, my fault. I forgot that I've created a custom C++ code formatter from the Mixxx coding styles myself in Eclipse.

Unfortunately different indents for access specifiers are not supported by the Eclipse C++ auto formatter. I suggest to revise this rule and either use the regular 4 spaces or none. Otherwise those manual indents will get lost with every auto formatting.

Or do you have a recommendation for another editor that supports the custom Mixxx code format rules?