An implementation of Mersenne Twister MT19937 in Ruby
Convert an Integer seed of arbitrary size to either a single 32 bit integer, or an Array of 32 bit integers
See seed=
Generates a completely new state out of the previous one.
Returns a random Integer from the range 0 … (1 << 32)
generates a random number on [0,1) with 53-bit resolution
Returns an integer within 0...upto
Seed must be either an Integer (only the first 32 bits will be used) or an Array of Integers (of which only the first 32 bits will be used)
No conversion or type checking is done at this level
[Validate]