Added exponential policy - 10% speed improvement
returns a valid pool of minimum size if exponential  is too big
Removed isOOM
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.
Fix identation
fix property enforcement
Improve documentation of thread_setGCSignals.

Fix some typos, and ensure that the documentation is available when
generating docs on any system, while also clarifying it is Posix-only.
Merge pull request #888 from lcapaldo/configurable_signals

Allow configuration of the signals used for GC
Merge pull request #959 from 9rnsr/enforceProp

fix property enforcement
Merge pull request #826 from etcimon/gc_exp_newPool

Exponential policy for new pool size
switch to D-style array declarations
Merge pull request #963 from WalterBright/no-carray

switch to D-style array declarations