[rbp] Add hardware decode to dvdplayer

Hijack the abandoned OpenMaxVideo codec
[omxcode] Allow hwcodec for DVD
[omxcodec] Enable for dvd menus
[omxcodec] Add omx specific texture create/upload/delete functions
[omxcodec] Add shared pointer to delay shutdown of codec until buffers are returned
[omxcodec] Fix for aspect ratio in non-square pixel modes
[omxcodec] Report error when codec not enabled
Improved file buffering in CArchive.

CArchive already did some file buffering, but only on writes. Added the
equivalent code for reads. Also improved the write buffer case so that it
only ever issues sector-aligned writes (the read code does this from the
start). Shuffled various bits of code into the header file to squeeze a bit
more performance out of it.

Profiled the effect on CFileItemList::Archive(), which is one of the slow
parts of the process of reopening a media library, on a non-overclocked
Raspberry Pi. Times are in seconds:

TV shows (253 items)

Before          After
Mean   StdDev   Mean   StdDev  Confidence  Change
0.394  0.005    0.151  0.005   100.0%      +159.8%

Songs (4115 items)

Before          After
Mean   StdDev   Mean   StdDev  Confidence  Change
2.931  0.045    0.690  0.019   100.0%      +324.4%
[rbp/settings] Allow av sync type to be enabled

It works for dvdplayer
[omxcodec] Add (broken) deinterlace support
[omxplayer] Fix incorrect settings query that can cause video stutter

A change in CSettings was missed here, and results in the clock component not being configured correctly.
This doesn't apply the correct filtering to clock changes and can create video stutter
[omxplayer] Reduce rate of clock change to reduce video stutters
[omxcodec] Only do essential calls in texture thread
[omx] Use generic texture queue for alloc/destroy

Fix race condition on exit
FIX: implement libcurl openssl thread-safe locking
[omxplayer] Always enable timestamp fifo mode.

This effectively makes avoid_fix_ts=0 unnecessary