[rbp/omxplayer] Copy audio splitter port parameters directly

Should have the same effect, but direct way seems more robust to other changes
[rbp/omxplayer] Add caching of states to reduce number of round trip delays to GPU
[rbp/omxplayer] Restructure COMXImage

Tidy up of COMImage. Separate into file reading, encode and decode classes with separate locks.
This allows some overlap of functionality which improves the speed.
[rbp/omxplayer] Remove component locking

We always need to have a higher level lock to provide atomicity of groups of accesses,
so remove the lock from the lowest level
[rbp/omxplayer] First attempt at a jpeg thumbnail pipeline
[rbp/omxplayer] First attempt at decode to texture
[rbp/omxplayer] Remove tunnel flushes

A tunnel flush flushes the ouput port of the source component and the input port of the dest component.
However the code already flushes all the ports of components, so many ports are flushed twice.

Remove the tunnel flush API and just flush component ports
[rbp/omxplayer] Make disabling ports optional

We typically don't want to disable ports after establishing a tunnel, so make this optional and default to false.
[rbp/gui] Add switch between higher and lower quality textures

To save memory we default to 16bpp textures,
but provide a GUI option to increase that to 32bpp.
[rbp/gui] Add switch to remove GUI 720p limit
[rbp/omxplayer] No need for two debug messages per component init
[rbp/omxplayer] Avoid hiding some unexpected error conditions
Merge xsp_sql_optims branch from Montellese
[CEC] Fix occasional deadlock when booting
[rbp/omxplayer] Add wait to port enables/disables