CUtf8Utils: add "checkStrForUtf8()"
New UTF-8 string check, based on current Unicode standard (6.3), with three result values: plain ASCII, valid UTF-8, high ACSII.
Utf8Utils: add "isValidUtf8()" for convenient check for valid UTF-8 strings
Remove usage of CharsetConverter.isValidUtf8()
CharsetConverter: remove outdated "isValidUtf8()"
mpegts: do not set pts for missing dts in video streams

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
ffmpeg: add patch for backport: mpegts-do-not-set-pts-for-missing-dts
[subtitles] check and get idx/sub pair when download.
[coreSubs] proper fix for cf85bdb , select services list if no subtitles are found
VideoInfoScanner::EnumerateEpisodeItem: don't use ToLower with UTF-8 strings, fixes #14728
Not needed as RegExps are done in caseless mode
Merge pull request #3764 from FernetMenta/mpegts

ffmpeg: backport mpegts fix for dts jumping backwards (trac 14622)
[lang] update of internal addon language files
[lang] update of core language files
[lang] update of skin.confluence language files
Merge pull request #3768 from taxigps/subtitle_addon

[subtitles] check and get idx/sub pair when download.
Merge pull request #3750 from Karlson2k/update_utf8_check

Update UTF-8 string check
CArchive: fix log report introduced in 643133d433bdeb9089c73887391d81dde85c763c
[info] CStdString -> std::string
[info] ToLower() an infobool expression prior to searching to save unnecessary caseless comparisons
[info] splits InfoSingle/Expression out from InfoBool.h
[info] Made CGUIInfoManager::Register() return a shared_ptr to the InfoBool object
rather than an index into its cache of such objects. All places where
those index integers were stored are changed to store shared_ptrs, and
CGUIInfoManager::GetBoolValue() now accepts them instead.

This permits the lifetime of a registered bool to persist across calls of
CGUIInfoManager::Clear(), if necessary.