demux: don't use codec_tag for raw PCM formats

In commit 2dd2d9b, raw PCM was switched to always go through ad_lavc,
and mapping codec IDs to mplayer internal codec tags was removed, as it
was not needed anymore. However, some uncompressed audio lavf demuxers
export  their own codec tags, which collide with the existing internal
mplayer codec tags, leading to incorrect raw PCM codec selection based
on the misinterpreted audio tag. Re-add the mapped codec IDs from
2dd2d9b. Map them to an invalid codec tag, so that the generic lavc
decoder is selected (assumes ad_lavc is the decoder for raw PCM).
demux_mkv: support more formats with V_UNCOMPRESSED

Select the generic raw video decoder in codecs.cfg ("MPrv" FourCC),
which forces the generic lavc raw video decoder "rawvideo". This means
all FourCCs understood by lavc rawvideo are supported, not just whatever
has codecs.cfg entries.
mplayer: add newline for --print-msg
screenshot: minor simplification, prefer VF over VO

Remove screenshot_force and associated logic. Always try to use the
screenshot video filter before trying taking screenshots with the VO,
which means that --vf=screenshot now takes the role of --vf=screenshot_force.
(To make this clear, not adding a video filter is still the recommended
way to take screenshots; we just change how VF screenshots are forced.)

Preferring VO over VF and having --vf=screenshot_force used to make
sense when not all VOs supported screenshots, and some VOs had somewhat
broken screenshots (like vo_xv taking screenshots with OSD in it). But
all these issues are fixed now, so just get rid of the cruft.
manpage: fixes

Add missing documentation for --quvi-format switch.

Fix description how hw decoding is enabled. The old way currently still
works, but is deprecated.
stream: set default HTTP user agent to "Mozilla/5.0"

Playing vimeo links using quvi support didn't work, even though clive
could. clive is using quvi and curl to download videos from streaming
sites, so if clive works mpv should always work as well. It didn't, and
it turned out that it was due to the user agent. Change the default
from whatever Lavf sends to what clive and cclive use. This will
probably always work, as c(c)live are by the same author as libquvi,
and there's a high chance it has been tested with all the supported
sites.
build: make it work on somewhat older ffmpeg versions

Tested with n0.10.4. All these version checks are rather tricky,
because Libav and FFmpeg change the same thing at slightly different
versions.
DOCS: update  encoding profiles installation instructions

Simply removed the assumption that the user is using `mpv-build`. Now provide 3
lines of shell that can be copy-pasted by the user for instant gratification
(and independent from $PWD).
cocoa_events: remove this functionality

This functionality looked smart but created problems with some kinds of
multi touch events. Moreover some events coming from the windows server – like
hovering a corner for window resize – didn't cause the player to wake up
immediately.

The "correct" non hacky way to implement async event polling with cocoa would
be having the vanilla cocoa event loop driving the player and setting up mpv's
terminal FDs as event sources for the cocoa event loop.

Fixes #20
cocoa_common: make the resize window menu items use video size

Make the window resizing menu items calculate the new window size based on the
video size and not the current window size.

This only makes a difference when using `--autofit`.
cocoa_common: fix focus with --ontop and space switching

The main problem this commit addresses is when you switched spaced back and
forth with `--ontop` active the video window didn't recive focus again.

Turns out that setting a normal window level just before conceding focus to
other apps / spaces fixes the problem. I think Cocoa is misbehaving here, and
should probably file a radar.

I found 3 related improvements while fixing this:
 *  fullscreen_window_level is a dead body from an older implementation.
 *  Use NSScreenSaverWindowLevel for ontop. This should be a really high window
    level. Definitely higher than NSNormalWindowLevel + 1.
 *  The window level was set correctly only when out of fullscreen.
cocoa_common: fix `--ontop` behaviour when windowed

Apply setLevel hacks for fullscreen switching with ontop active only in
fullscreen. This keeps the window correctly on top even when losing focus.

Fixes #21

I also reverted NSScreenSaverWindowLevel to NSNormalWindowLevel + 1, so that
the cmd-tab UI is visible
mp_common: improve OSD/status time formatting

Allow negative times. Timestamps can be negative, and we actually
display negative time for other reasons too, such as when waiting for
the old audio to drain with gapless audio.)

Avoid overflows with relatively large time values. (We still don't
handle values too large for int64_t.)
demux_lavf: remove "internet radio hack"

It appears this is not needed anymore. ffmpeg can handle "chained" ogg
files fine. These can be created with "cat file1.ogg file2.ogg > chained.ogg",
and are similar (or equal) to some internet radio streams. Apparently
ffmpeg used to add new tracks when crossing boundaries in chained files,
and the hack in demux_lavf.c handled this. At some later point, ffmpeg's
ogg demuxer was improved, and stopped adding new tracks as long as the
codec doesn't change.

Since the hack in demux_lavf.c was hardcoded to Vorbis (i.e. only active
if the new and old track were both Vorbis), it's dead code, and we can
remove it. I couldn't find any stream that triggered this hack, or fails
without it.

Firefox had a similar issue, and its bug tracker makes a good reference:

    https://bugzilla.mozilla.org/show_bug.cgi?id=455165

NOTE: this doesn't update metadata on track changes anymore.
demux_lavf: remove weird stream auto-selection

Should be dead code. Stream selection is handled either during
demuxer initialization, or via DEMUXER_CTRL_SWITCH_*.
(If there were actually situations where this code did something, it
was probably broken anyway.)
mplayer: make advancing the playlist respect looping

Explicitly advancing the playlist with input commands ("playlist_next")
didn't jump back to the first file, if the current file was the last on
the playlist and looping was enabled.

Fix this and make the behavior with explicit input and playback EOF the
same.

Also add a minor feature: if looping is enabled, and the current file is
the first on the playlist, going back one entry jumps to the last
playlist entry (without changing loop count).

Fixes #22.
Copyright: cleanup entries for removed code
DOCS: remove files documenting removed/rewritten functionality

Most of these are a waste of time. Some (like slave.txt) have been
rewritten in rst.

The remaining files aren't that useful, but probably do no harm.
vf_dlopen: fix external pixel format names

"yv12" stopped working a while ago, and so did other FourCC-like names.
Make "yv12" work again, so that the examples in TOOLS/vf_dlopen/ work.
demux_lavf: default PTS to 0 for attached pictures

The ffmpeg/libav attached picture hack usually set the PTS of video
packets to AV_NOPTS_VALUE. Set it to 0 to avoid printing a warning by
the filter code.