[rbp/omxplayer] Use an omx decode to texture pipeline

This PR uses an openmax pipeline to handle jpeg decode/resize/convert to texture without the decoded pixels being returned to the arm.

The jpeg is decoded in stripes which saves memory. There is no need for the RGBA32 pixel buffer to ever exist on the arm.
It is straightforward to choose whether the textures are 16bpp or 32bpp which could be a useful option on 256M Pi.

This scheme is *much* faster, and is the main factor in the recent raspberry-pi "speed" video.
It is well tested and openelec and raspbmc builds have been made with this patch in.
[rbp/omxplayer] remove resume players on CloseFile, fixes some small portion of audio being played when stopping a paused video
[rbp/omxplayer] Add external subs' details while updating stream details from player.
[rbp/omxplayer] update current video settings when changing setting subtitles stream to be sure we keep it synced (similiar to what we already do when we show/hide subtitles)
[rbp/omxplayer] Use CUtil::GetExternalStreamDetailsFromFilename to determine external subtitles's details.
These are language, name and flag.
[rbp/omxplayer] Allow the use of external subtitles for DVDs
[rbp/omxplayer] allow external .sub subtitles next to text-based ones
[rbp/omxplayer] allow setting the video's stereo scopic mode from video settings
[rbp/omxplayer] Unpause (if applicable) when going to DVD menu
[rbp/omxplayer] Add busydialogdelayms advanced setting.
[rbp/omxplayer] Take advantage of if evaluation order.
[rbp/omxplayer] Remove unnecessary NULL check.
[rbp/omxplayer] Set CMediaSettings::Get().GetCurrentVideoSettings().m_AudioStream on open/set.
[rbp/omxplayer] Save the subtitle number at the end of the OpenSubtitleStream() method.
Regardless of whether the subtitle has been opened successfully or not.
[rbp/omxplayer] prune from usage of DWORD and BYTE typedefs
[rbp/omxplayer] Fix (harmless) typo with video/audio fifo levels
Merge pull request #3493 from popcornmix/texture_pipeline

[rbp/omxplayer] Use an omx decode to texture pipeline
Merge pull request #3557 from popcornmix/update_dvdplayer

[rbp/omxplayer] Apply latest commits from dvdplayer to omxplayer
Avoid bleeding authentication credentials into logs.

API Changes: URL:GetWithoutUserDetails() ->
URL::GetWithoutUserDetails(bool redacted=false)

Replacing std::string for CStdString, for the relevant callstack below
CURL::getWithoutUserDetails(), mainly URIUtils, CStdString functions are kept
 as wrappers around the std::string versions.

Manual code reviews of all the affected files in filesystem. I've made semi conservative decisions on where to change the code. This means that some instances may have slipped through the cracks, since I've tried to avoid changing code I didn't understand.

I've looked into the following systems:
-Samba
-FTP
-SFTP
-HTTP
-WebDAV
-Stacks
-NFS (N/A)
-UPnP (N/A)
-RSS (N/A)

In addition, I've tried to mess around to find leaks in different other parts of the system.

I see this as an incremental commit, removing almost all leaks in the normal codepaths. There may still be some leakage in paths I don't commonly use.
Passed scan of 40TB of well-formed content, without any leaks.
Added regression tests for URL::GetWithoutUserDetails()