x86: qpel: Move fullpel and l2 functions to a separate file

This way, they can be shared between mpeg4qpel and h264qpel without
requiring either one to be compiled unconditionally.
vp3: Embed idct_permutation array directly in VP3DecoderContext

This makes the vp3 decoder less dependent on dsputil, and will aid
in making it (eventually) dsputil-independent.
h264: Clear the mb members via memset instead of using dsputil
lavc: Make pointers to ff_cropTbl const

There's no point in these pointers not being const.
lavc: Move ff_cropTbl and ff_zigzag_direct from dsputil to mathtables

These are widely used throughout libavcodec, nothing dsputil-specific.

Change ff_cropTbl to a statically initialized table, to avoid
having to call some certain function to initialize it.
h264: Integrate clear_blocks calls with IDCT

The non-intra-pcm branch in hl_decode_mb (simple, 8bpp) goes from 700
to 672 cycles, and the complete loop of decode_mb_cabac and hl_decode_mb
(in the decode_slice loop) goes from 1759 to 1733 cycles on the clip
tested (cathedral), i.e. almost 30 cycles per mb faster.
h264: Only initialize dsputils if error resilience is enabled

It is only used for error resilience. This allows building the
h264 decoder without dsputils, if error resilience is disabled.
dsputil: Make dsputil selectable
configure: Use a different variable name in push/popvar

The variable name 'var' is commonly used to iterate through arguments
in other functions. When the pushvar function internally uses the
variable 'var', it makes pushing/popping the varibale 'var' not
work as intended.
configure: Don't do enable_deep_weak on disabled variables

This avoids cases where configure tries to weakly enable an item
which actually is disabled, ending up still enabling dependencies
of the item which itself is only enabled weakly.

More concretely, the h264 decoder suggests error resilience, which
is then enabled weakly (unless manually disabled). Previously,
dsputil, which is a dependency of error resilience, was enabled
even if error resilience wasn't enabled in the end.
vp3: bfin: Use full transpose for the IDCTs
vp3/x86: Use full transpose for all IDCTs

This way, the special IDCT permutations are no longer needed. This
is similar to how H264 does it, and removes the dsputil dependency
imposed by the scantable code.
hpeldsp: Add half-pel functions (currently copies of dsputil)
vp3: Use hpeldsp instead of dsputil for half-pel functions

This makes vp3 independent of dsputil.
vp56: Use hpeldsp instead of dsputil for half-pel functions

This makes vp5 and vp6 independent of dsputil.
indeo3: Use hpeldsp instead of dsputil for half-pel functions

This makes indeo3 independent of dsputil.
bink: Use hpeldsp instead of dsputil for half-pel functions
interplayvideo: Use hpeldsp instead of dsputil for half-pel functions

This makes interplayvideo independent of dsputil.
mimic: Use hpeldsp instead of dsputil for half-pel functions
svq1: Use hpeldsp instead of dsputil for half-pel functions

This makes svq1 independent of dsputil.