Allow configuration of the signals used for GC

On Posix systems druntime's GC uses SIGUSR1 and SIGUSR2 to implement
suspension of threads for its garbage collector. When integrating D into
existing programs written in other languages such as C or C++,
SIGUSR1/SIGUSR2 may already have an existing meaning. This allows those
programs to use currently unused signals for D's GC, most likely some of
the POSIX real time signals where availble.

This is acheived by calling thread_setGCSignals prior to thread_init, at
most once. If it is not called the runtime will continue to use SIGUSR1
and SIGUSR2. The functionality leaves the choice of signals up to the
caller, it does not assume any particular real time signal or that real
time signals are available.