CGUIWindowSettingsCategory: update delayed setting changes on focus change asynchronously

When using the mouse to focus another control after having changed the value
of a delayed setting that reloads the skin, a SIGSEGV occured because the
CGUIControl event handler tried to execute code on an already destroyed object.
Handling the update of the delayed setting change asynchronously allows the
active event handler to finish working before handling the previously triggered
GUI_MSG_UPDATE_ITEM which may lead to the destruction of the setting controls.
Merge pull request #2675 from ulion/curl_range_rework

Fixed: do not send Range request header when encounter error.
fix possible legacy path translation crash (thanks vdrfan)
settings: remove redundant/invalid <heading> definitions
[win32] supress warning C4355: "'this' used in base member initializer list"
settings: remove redundant/invalid <heading> definitions (part 2)
localization: fix "xbmc/settings/foo.xml" to "system/settings/foo.xml"
cosmetics: follow coding guidelines in CTCPServer
restructure CreateTCPServerSocket to check socket validity before using it
[win32] fix setsockopt calls in CreateTCPServerSocket to support dual-stack IPv4 and IPv6
fix log message introduced by da347c4dacb9ef91883af47a19af6153ade5f137
remove duplicate code already executed by CNetworkServices::StartAirPlayServer()
Add artist level to CD Audio rip path

PR made as requested in http://forum.xbmc.org/showthread.php?tid=164044
[fix] show correct string after PR2626
CGUISliderControl: only switch between selectors on <Enter> if there are more than one
Merge pull request #2768 from Tolriq/rippath

Add artist level to CD Audio rip path
[win32] cosmetic change in WIN32Util.h
[win32] always use IPv4 sockets on WinXP (because it doesn't support dual-stack IPv4 and IPv6 sockets through IPV6_V6ONLY)
[WIN32] fixed: delete vs created stuff as well on prepare-env
Add CThread::IsCurrentThreadStopping() to check current thread stopping.