lavc: Edge emulation with dst/src linesize

Allow supporting files for which the image stride is smaller than
the maximum block size + number of subpel mc taps, e.g. a 64x64 VP9
file or a 16x16 VP8 file with -fflags +emu_edge.
lavc: VP9 decoder

Originally written by Ronald S. Bultje <rsbultje@gmail.com> and
Clément Bœsch <u@pkh.me>

Further contributions by:
Anton Khirnov <anton@khirnov.net>
Diego Biurrun <diego@biurrun.de>
Luca Barbato <lu_zero@gentoo.org>
Martin Storsjö <martin@martin.st>

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
lavc: deprecate CODEC_CAP_NEG_LINESIZES

It was never used in any codec since it was added 3 years ago.
lavc: update coded_frame doxy.

It is not used during decoding anymore.
Replace all instances of avcodec_alloc_frame() with av_frame_alloc().
lavc: deprecate avcodec_alloc_frame().
a64multienc: use the AVFrame API properly.
asvenc: use the AVFrame API properly.
avs: use the AVFrame API properly.
bethsoftvid: use the AVFrame API properly.
c93: use the AVFrame API properly.
cdxl: remove an unused variable
cinepak: use the AVFrame API properly.
cljr: use the AVFrame API properly.
qtrle: use the AVFrame API properly.
escape124: use the AVFrame API properly.
msvideo1: use the AVFrame API properly.
cin video: use the AVFrame API properly.
qpeg: use the AVFrame API properly.
dxa: use the AVFrame API properly.