[mmal] Add MMAL decoder and MMAL renderer for Raspberry Pi

While omxplayer is the best performing player on the Pi (and the only option for raw Blu-Rays)
there are some reasons to use dvdplayer on a Pi:

DVDs with menus do not work well with omxplayer
support of software decode for SD codecs like divx3, msmpeg, sorenson spark etc
omxplayer doesn't support alsa, so can't be used with USB and I2S sound cards
dvdplayer may behave better with dodgy timestamps and packet loss, e.g. with live TV

So this PR adds hardware acceleration to dvdplayer using the MMAL api.

There is also a MMAL based video renderer. Compared to using GL, this:
saves the processing cost of YUV->RGB conversion
saves the memory cost of the RGB textures for video frames (1080p = 3MB for YUV and 8MB for RGB)
allows high quality (cubic) scaling
[mmal] Allow mmal codec for dvd stills
[omxcodec] Fix for stills with hardware codec

Hardware codecs typically run asynchronously to the decoded frames.
The reason that hardware codecs don't work when hint.stills is true
is because DVDPlayerVideo stops calling Decode/GetPicture when there
are no more decoded frames.

This means the still frames never get read out.
The solution is to also call Decode/GetPicture with the timeout messages
when hint.stills is true.
[VideoReferenceClock] Add OMX support
videoreferenceclock: Boost priority
[rbp/settings] Allow av sync type to be enabled

It works for dvdplayer
ffmpeg demuxer: faster channel change for PVR addons without internal demuxing (such as MediaPortal, ArgusTV, MythTV, NextPVR) Credits: FernetMenta, Davilla, Popcornmix, Whaupt
DVDFactoryDemuxer: skip streaminfo for udp tcp and pvr-channels
xbmc pr 3080
fast channel switch, make sure extradata is decoded
[omxplayer] Don't propagate 3d flags based on supported 3d modes
[graphics] Don't set stereo mode based on resolution

The resolution change should follow stereo mode
[graphics] Allow switching to a more suitable 3D resolution
[3D] Support switching to 3D resolutions

Include matching 3D flags (SBS/TAB) in the score of a resolution to switch to, to enable switching to 3d modes.
Also remove the old code that treated 3D modes differently when assigning a score.
[graphics] Make pixel ratio for 3d modes consistent

Note: Use the stored stereo flags from lists of resolutions.
Use current stereo mode for current resolution.
filesystem: Make support of browsing into archives optional

The ability to browse, scan and play content in archives can cause problems on low powered/low memory devices.
It's quite common to see reports of a large rar file that causes xbmc to crash with an out-of-memory error when browsing or scanning.
It also can be slow as any archive in the directory is opened and extracted.

Add a settings option to enable this feature and default to disabled on Pi
confluence: Remove media-overlay.jpg for when video is backgrounded
[omxplayer] Add acceleration option to choose omxplayer/dvdplayer automatically
AE: Add some logging for suspend/resume
[rbp] Make cachemembuffersize default depend on memory size