MT alignement
Move static asserts

So they trigger before they create a compile error
Add extra asserts on "w"
Document the rest of the parameters
Fix  Issue 11960 - Phobos Mersenne Random Engin...

...e not supporting unsigned longs
Add an MT unittest
fix Issue 12041 - Strange warning pragma when instantiating WhiteHole

Remove restiction in AutoImplement with nothrow function.
Merge pull request #1892 from 9rnsr/fix12041

Issue 12041 - Strange warning pragma when instantiating WhiteHole
Merge pull request #1874 from monarchdodra/11960

Fix Issue 11960 - Phobos Mersenne Random Engine not supporting unsigned longs