common module for all PRNG implementations