Merge pull request #4729 from tamland/hls-check-mime-type

Allow HLS streams without m3u8 extension
Merge pull request #4853 from Karlson2k/update_cpuinfo_01

Update CpuInfo
[posix] SysInfo::GetDiskSpace additional partial fix
[utils] drop ASM from MathUtils::truncate_int() - standard cast to integer does what we want anyway.
[uriutils] add std::string version of IsInternetStream
[fileitem] adds Get/SetURL() to CFileItem to return/set a CURL of the path, and CURL based constructors.
[CURL] make the CStdString constructor explicit, to ensure we capture function conversion to CURL
[stdstring] convert some filesystem based functions to std::string
[uriutils] add CURL versions of various URI processing functions or helpers
[uriutils] rewrite CreateArchivePath() to return a CURL
[filesystem] split the filtering of hidden files from non-allowed files so they can be optimised
[filesystem] adds IDirectory::AllowAll() to take over from IDirectory::IsAllowed to save CURL processing
[filesystem] convert IDirectory interface to use CURL
[filesystem] adds CURL versions of CDirectory and CFile functions.
[filesystem] switch directory factory Create() calls to CURL
[cosmetic] minor cleanup in CDirectoryFactory::Create
[cosmetic] drop unused ZipManager::Cleanup function
[smartplaylist] use CURL for reading from files
[filesystem] cleanup CFileDirectoryFactory to use the CURL we pass into it where possible
[cosmetic] rename CFile::Cache to CFile::Copy as that's what it does