chmap_sel: add channel replacement for sl/sr <-> sdl/sdr

This can be use useful for the 7.1 rear layout. In particular it looks like
OS X likes to use sdl/sdr as opposed to sl/sr.
ao_coreaudio: pass layout by reference to logging function

Apparently passing the struct by value somehow messed with the value of some
fields.
ao_coreaudio: use description-based channel layouts

CoreAudio supports 3 kinds of layouts: bitmap based, tag based, and speaker
description based (using either channel labels or positional data).

Previously we tried to convert everything to bitmap based channel layouts,
but it turns out description based ones are the most generic and there are
built-in CoreAudio APIs to perform the conversion in this direction.

Moreover description based layouts support waveext extensions (like SDL and
SDR), and are easier to map to mp_chmaps.
ao_coreaudio: print an error when channel mapping fails
ao_coreaudio: cosmetic change of loop ending condition
ao_coreaudio: don't fallback to full waveext

The code was falling back to the full waveext chmap_sel when less than 2
channels were detected. This new code is slightly more correct since it only
fills the chmap_sel with the stereo or mono chmap in the fallback case.
ao_coreaudio: remove useless code

This code doesn't actually makes much of a difference, and the AudioUnit
mostly wants layout tags anyway.
ao_coreaudio: skip unknown channel labels

I don't think this is really a very good idea because it is conceptually
incorrect but other prominent multimedia programs use this approach
(VLC and xbmc), and it seems to make the conversion more robust in certain
cases.

For example it has been reported, that configuring a receiver that can output
7.1 to output 5.1, will make CoreAudio report 8 channel descriptions, and the
last 2 descriptions will be tagged kAudioChannelLabel_Unknown.

Fixes #737
old-makefile: add a missing source directory

Fixes "make clean".
player: don't complain on too long filenames

mpv supports per-file config files, basically filename+".conf". We use
a static buffer for the new filename, and if that buffer is too small,
we print a warning. This is confusing for e.g. long URLs, so just hide
the warning by default.

Why not dynamically allocate the buffer? Who cares.
input: remove pausing command prefixes

These are now equivalent to combining commands with the "cycle pause" or
"set pause" commands, and thus are not needed anymore. They were also
obscure and undocumented.
manpage: minor corrections
demux_playlist: fix m3u detection logic

Caused failure to detect .pls files, because they were misdetected as
m3u. The problem is that "forcing playlist files" and "forcing a
specific playlist format" are not really treated separate, and in both
cases p->force is set to true. This made m3u detect all files as m3u
if --playlist was used. So correctly check whether the file format is
actually being probed or not.
build: removed undefined behavior from PVR check

This shouldn't matter, but it's probably better if the code to check is
valid - otherwise an extremely clever compiler might fail to compile it,
and the feature would be misdetected. (Probably.)

Found by cppcheck.
player: don't assign "false" to pointer

This is legal in theory. "false" expand to 0, and 0 is a valid pointer
value. But I guess this was not really intended.

Found by cppcheck.
wayland: fix unchecked malloc usage

Found by cppcheck.

Actually untested. (This is the file drag&drop code, I don't even know
which wayland clients support this.)
audio/out: more debugging info for --dump-stats
mixer: make code more readable

You wouldn't have guessed that the bottom-most "level[i] = 0.f;" line
was actually required. It even confused cppcheck.
manpage: update --playlist entry
TOOLS/stats-conv: draw playloop and AO thread events separately

Use for all AO thread events y=0.5, while playloop events remain at y=1.
This makes the graph easier to read.