Rewrite Rand functions

We now use a generic Rand structure which abstracts the core functions
from the backing engine.

The old Mersenne Twister engine is removed and replaced instead with
three alternatives:

 - Pcg32
 - Xoroshiro128+
 - Isaac64

These should provide sufficient coverage for most purposes, including a
CSPRNG using Isaac64. Consumers of the library that do not care about
the actual engine implementation should use DefaultPrng and DefaultCsprng.
0fd0f6fd1fMarc Tiehuis committed on 3/29/2018, 12:50:58 PMparent032fccf
7 files changedLine totals unavailable