ao_alsa: remove global variables
ao: remove ao_driver.is_new field

Is unused, is completely pointless.
audio/filters: add af_force

Its main purpose is for testing in case channel layout stuff breaks, in
particular in connection with old audio filters.
ao_openal: use channel map instead of ALSA fixed layout
manpage: update --channels
af_lavrresample: avoid channel reordering with unknown layouts

If one of the input or output is an unknown layout, but the other is
known, it can still happen that channels are remixed randomly. Avoid
this by forcing default layouts in this case. (Doesn't work if the
channel counts are different.)
audio: add channel map selection function
ao_pulse: move format setup code
audio/out: channel map selection

For now, alsa/pulse only. WIP.
ao_alsa: set fallback if format unknown

The snd_pcm_hw_params_test_format() call actually crashes in alsa-lib if
called with SND_PCM_FORMAT_UNKNOWN, so the already existing fallback
code won't work in this case.
audio: add double sample format

To make this easier, get rid of the direct mapping of the
AF_FORMAT_BITS_MASK bit field to number of bytes. This way we can throw
away the unused AF_FORMAT_48BIT and don't have to add ..._56BIT.