FxMixer, Mixer, AudioPort: minor coding style fixes
EffectChain: new argument hasInputNoise for processAudioBuffer()

Use the extra information to determine whether we need to process input
at all if plugin is not running anymore.

In FX mixer we now omit starting effects if no data has been mixed to
a certain FX channel. Instead let effects running until they finished.

First of multiple fixes for #267.
MixHelpers: added isSilent()

A simple function for testing whether a given sample buffer is silent.
Maybe we have to adjust/lower the threshold.
InstrumentTrack: skip processing for IPH-driven instruments when silent

InstrumentPlayHandle-driven instruments (i.e. instruments producing only
one sound stream for all notes) are running all the time even if no notes
are running. The plugin itself usually does not consume much CPU time
while silent but all effects afterwards inside LMMS unneccessarily
consume lots of CPU time for processing silent buffer.

Typical case: a song with lots of instruments like ZynAddSubFX.

With this change, all processing is skipped on silent buffers which
notably decreases CPU load for many projects. All effects in following
effect chains continue to run until they're silent as well.

Closes #267.
InstrumentTrack: always process silence at least one time

As of commit 1266278229a532f221ac9588fa5c85063d236ac8 silent buffers
from InstrumentPlayHandle-driven instruments are ignored. This is a good
thing but can beak PeakController instances attached to e.g. ZynAddSubFX.

Fixes playback of unfa-Spoken.mmpz.
FxMixer: no need to check for master channel

The m_used property will always be true for the master channel as soon
as data was received from at least one FX channel.