Bug 865234 - Part 1: Add DOM bindings for the channel mixing attributes; r=roc
Bug 865234 - Part 2: Send the channel mixing information to the AudioNodeStream; r=roc
Bug 865234 - Part 3: Implement ChannelCountMode's effect when mixing inputs; r=roc
Bug 865234 - Part 4: Implement ChannelInterpretation's effect when mixing inputs; r=roc
Bug 865234 - Part 5: Don't mark a stream as finished when there are streams following it; r=roc

Without this patch, if we have an AudioBufferSourceNode which is finished, the
nodes following it will not see its mLastChunk.  This breaks the Web Audio
block processing logic since we rely on the assumption that the buffer for the
last output of AudioBufferSourceNode is correctly passed to the following
engines.
Bug 865234 - Part 6: Round up the |when| argument AudioBufferSouceNode.start; r=roc

This change is made in order to increase compatibility of the implementation
with what WebKit does.  This helps us in order to be able to compare our
results more closely to WebKit's.
Bug 865234 - Part 7: Change the speaker up-mixing and down-mixing rules according to the Web Audio spec; r=roc
Bug 865234 - Part 8: Add a test case for channel mixing rules; r=roc
Bug 865234 - Part 9: Avoid variable shadowing in AudioNodeStream::ObtainInputBlock; r=roc