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
Merge pull request #1874 from monarchdodra/11960

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