-- support mulitple generators
Want to save the state, and later continue the generation.
In the case of mt19937ar.c, if one saves mt[N] (624 words) and the
counter mti (1 word), then one can continue the computation by loading
these values.
* too much copying...
* supporting multiple, impure generators is possible though.
-- Also provide a RandomGen instance
-- eager evaluation
-- fill arrays in chunks
-- possible api for this?
-- support fast range bounds
-- too slow on haskell side currently.
-- statistical correctness, DieHard suite.
-- too complex.
-- coverage tests
-- fixed in head.
-- move to .Unsafe