Ignore media content with .nomedia in parent

Currently there is no quick way to ignore certain media files, the
android ecosystem has a '.nomedia' file to exclude directories from
being scanned. Add the same functionality to XBMC.
[videoinfoscanner] scan the entire subtree of path passed to scanner.

- fixes new files not getting picked up when more than 1 level down.
- fixes hashing never being used when scanning a single directory.
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.
[android][docs] add note how to install needed deps for android ndk on ubuntu 14.04 x86_64
[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
[dvdplayer] Remove omx render features from dvdplayer and handle in mmalrenderer
[bluray][files] Add new BlurayFile class.
GUI.OnScreensaverDeactivated does not follow JSON-RPC API definition

The announcement of `GUI.OnScreensaverDeactivated` does not follow the
defined API - it outputs `data` as a `boolean`, not `null`.  This
behaviour was introduced in ea9f2f01 to support a special case for CEC
devices, that must choose to act based on whether this notification was
triggered on the back of a shutdown.

As the rest of the API defines `data` to be of type `null` or `object`,
I've moved this boolean to a `shuttingDown` member on the data object,
rather than changing the API to be inconsistent for a special case.
Bump json-rpc schema version
[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)
[python] add *all* module dependencies to path (recursively), not just direct dependencies of the addon we're invoking