[AE/CA] Always create a valid mixmap.

We can't loop over candidates, that way we might end up with a mixmap
that maps to something the output is not ready to handle.

The diagonal mixer is something that Apple even does in their own
examples.
[AE/CA] Fix usage of of mixing matrix

The return from kAudioFormatProperty_MatrixMixMap is a Float32* which
is laid out like this:

mapping 2 chan -> 2 chan
1 0 0 1

or better represented in a tow dimensional array:

1 0
0 1

mapping 6 chan -> 6 chan:
1 0 0 0 0 0
0 1 0 0 0 0
0 0 1 0 0 0
....

Which explains why the older code some times mapped things totally
wrong.
Merge pull request #3454 from tru/fix_coreaudio_mixmapping

[AE/CA] Fix coreaudio mixmapping