[sgen] Fix pointer access.

Thanks to @martinpotter for finding the bug.
[runtime] Use the functionality in mono-proclib.c to enumerate processes, remove duplicate code from the io-layer.
[runtime] Use the functionality in mono-proclib.c to get the current pid, remove duplicate code from the io-layer.
[runtime] Remove pre WinXP SP2 windows support code.
Merge pull request #1326 from BrzVlad/master

[sgen] Fix pointer access.
[runtime] Use WinXP SP2 as the minimum version on the msvc builds too.
runtime] Really use WinXP SP2 as the minimum version on the msvc builds too. Update project files with newly
added/removed sources.
[runtime] More win32 build fixes.
[runtime] Use explicit initialization in the io-layer process code instead of pthread_once (). Get rid of the WAPI_PROCESS_HANDLE_OFFSET code which was only used in shared mode.
[runtime] Rewrite io-layer process code to reduce duplication and make it conform to the mono coding conventions.
Prevent NullReferenceException in case of missing Host

Do not throw a NullReferenceException when Host variable is not set.
Ignore the calls to RegisterObject and UnregisterObject instead.
Merge pull request #1333 from joero74/ignore-missing-host

Prevent NullReferenceException in case of missing Host