SlingboxLib: Fix alternative CSlingbox constructor

CSlingbox::CSlingbox(const char * szAddress, unsigned int uiPort /* = 5001 */) {
  // Call default constructor
  CSlingbox();
  ...
}

"CSlingbox();" - object is created and immediately removed.
Therefore with CSlingbox(const char * szAddress, unsigned int uiPort /* = 5001 */) class members will not be initialized.
[gui] adds new method GetSelectedItemPath() to CGUIViewControl
[pvr] fix: remember the wrong selected item path if you close the channel osd

If you close the channel osd on a different group than the current playing group without switching to a channel of this group, the wrong selected item path is stored in the global variable. This fix it by setting the proper selected item of the current playing group.
[pvr] use new GetSelectedItemPath() method in CGUIWindowPVRBase
[bluray][files] Add new BlurayFile class.
[settings] - add new expert setting for enabling ios8 compatibility
[airplay] - implement different announcements when using the ios8 compatibility mode
[airplay] - implemented photo asset cache
[airplay] - send an error code for the fp-setup request
[airplay] - add some handy helpers for using binary plists
[airplay] - handle /play of newer airplay protocols - instead of location it sends 2 seperate entries host + path
[airplay] - merge the binary plist and xml plist pathes in airplay (which already diverged) by using libplist for parsing in both cases - not only the binary case
[airplay] - support the /play command which wants us to start playback "paused" - (camera roll on ios8 for example)
Dialog: Don't reset symbol keys after onClickButton

* Resetting the keys makes typing a URL, SMB, FTP or any address
    a longer process than is necessary, especially with a remote.

Signed-off-by: Brandon McAnsh <brandonm@matricom.net>
CacheStrategy: remove usage of emulated win32 functions, switch to internal VFS
URIUtils::IsInPath needs to check if the base path isn't empty, fixes texturecache when there is no skin loaded
Hide dialogs for library clean/scan by default if automatically triggered.

This doesn't show dialogs and progress bars for library clean or scan if
initiated by an add-on or by a JSON-RPC client by default, as they're assumed
to be automatically triggered.

*library.backgroundupdate is still supported to let the user choose to not show
the progress even if user-initiated as it may take a while.
json-rpc: Add "showdialogs" to Audio/VideoLibrary.Clean/Scan. Bump to 6.19.0.
[keyboardlayouts] add Norwegian
[keyboardlayouts] add Danish