Merge pull request #4702 from da-anda/3D-more-codecs

[3D] add support for stereomode detection of other codecs than MKV
quell clang warning: don't use strFileName twice.
[addoncallbacks] check key is non-null before use
[darwin] SysInfo::GetKernelBitness: Use special function for Darwin iOS
[darwin] SysInfo::GetKernelCpuFamily: Use special function for Darwin
TestSystemInfo: print system information
SysInfo::GetKernelBitness: cache result
SysInfo::GetKernelCpuFamily: cache result

Conflicts:
	xbmc/utils/SystemInfo.h
Merge pull request #4975 from Memphiz/osx_fix_devicechanged_recursion

[AE/osxsink] - fix possible device changed loop when using passthrough
[dav] have GetStatusTag() iterate over XML elements, not nodes.

As things are, if there are no children of the passed element, we'll have a NULL dereference.
[dav] iterate over XML elements not Nodes in CDavDirectory::ParseResponse() as we assume elements inside the loops anyway
[rssdirectory] have a helper for getting the value of a child XML element rather than calling GetText() and assuming a non-NULL response
[edl] use FirstChild()->Value() rather than GetText() in parsing cut times
[pls playlist] use FirstChild()->Value() rather than GetText() without NULL checks
[advancedsettings] use FirstChild()->Value() rather than GetText() when reading DNS cache entries
[fanart] use FirstChild()->Value() rather than unchecked GetText().

NOTE: Potential change in behaviour in that if a url attribute is specified in the <fanart>
node and <thumb> children are specified without a value, it used to just take url as the
url.  This was not intended, however, as url is supposed to be the base url, not the full url.
[buttontranslator] tidy the MapRemote and MapJoystickActions functions to not use unchecked GetText()
[cosmetic] indenting
[buttontranslator] kill unnecessary ifdefs
Merge pull request #4334 from Jalle19/requeststreams

Remove a superfluous call to RequestStreams()