Add a libav compatibility layer with --enable-libav-compat

Don't trust the summary: This PR cleans up xbmc code from libav support and moves it to its own place.

To give libav compatibility, a small static library with the missing code mostly copy/pasted from FFmpeg is built when --enable-libav-compat is passed to configure.

In the end, this makes xbmc code cleaner and moves the mess to try to support both libraries to a saner place.
XBMC can now assume FFmpeg and those that care should add the missing bits to the libavhacks library.

XBMC now works with FFmpeg 1.2 up to git master and libav git master if configured with --enable-libav-hacks.