Disable channel icon scan when icon path is empty

XBMC checks the icon path and terminates the scan early if no path is set. This commit causes the setting to respect that.
Only print the wayland-egl part of the detected library and not wayland-client.
Forward declare EGLNativeDisplayType.

We were incorrectly forward declaring EGLNativeWindowType instead.
HttpHeader: add 'AddParam' function
CurlFile: use HttpHeader:AddParam
CurlFile::CReadState::HeaderCallback: internally use std::string instead of char*
Move all header parsing logic from CurlFile::CReadState::HeaderCallback to CHttpHeader::Parse
HttpHeader::GetValue: refactoring
HttpHeader::GetMimeType: fix: exclude "charset" and other secondary parameters
HttpHeader: add 'GetCharset' function
CurlFile: add "GetServerReportedCharset" function
HttpHeader: make 'GetProtoLine' inline const
Merge pull request #3467 from Karlson2k/curlfile_update_03

CurlFile - update 03
Merge pull request #3458 from smspillaz/fix-14644-14645

Some simple wayland build fixes for newer mesa versions
fixed, compiler warning
ios: fixed, use full path on XBMCController.h to get the correct file as there are two, one for ios and one for atv2
darwin, fixed, compiler warning. DarwinUtils.h is C linkage so you should not be using C++ objects as return or params
ios: fixed, use full path on XBMCController.h
fixed, Operator '?:' has lower precedence than '*'; '*' will be evaluated first. Which is wrong :)
fixed, really ? I mean really?