Runtime test to reproduce threadpool+ProcessExit issue

Do make test-process-exit to run
Fixes threadpool+ProcessExit problem

The threadpool was being shutdown too early, before the ProcessExit event was fired.
This led to bugs such as NLog not shutting down
(http://nlog-project.org/2011/10/30/using-nlog-with-mono.html).
Swap the condition -- instead of checking for OS X and assuming anything else uses the Linux behavior, check for Linux and let other platforms use the default POSIX behavior. This allows sigaltstack to be used on BSD variants.
This change has been tested (with the standard test suite) on FreeBSD 9.1 (i386, amd64) and Ubuntu 12.04.1 (i386).
Remove #ifdefs so ss_flags is always set to zero.

Removed the #ifdefs which used a different value for 'ss_flags' on Linux.
According to the POSIX standard, the SS_ONSTACK flag can never be used as input to the 'sigaltstack' function -- it can only be set by the 'sigaltstack' function itself, and tested after the function returns.
Fixed handling of modifier keys in KeyEventArgs constructor (bug #6707)
Avoid loading AOT modules for ref-only assemblies.
Adjust OptionalCalendars test so it will work when the linker is enabled
TypeFromCLSID is not available when build with FULL_AOT_RUNTIME (e..g iOS)
Add mdbrebase generated script to gitignore
Add generated Makefile.am to gitignore
Remove Collection dependency from ReadOnlyCollection
Use faster string checks
Use generics list
Use faster invariant conversion
Use faster string comparers
Fix constant folding fox null string constants. Fixes #10821
Fix failing test
Move rarely used NamedDataSlot to its own type to cut few dependencies
Merge pull request #595 from UCIS/master

Fixed handling of modifier keys in KeyEventArgs constructor (bug #6707)
Merge pull request #594 from Adeath56/patch-1

System.Web.dll : NullReferenceException on GetItemInternal() after a Session.Abandon()