This PR adds a new module for random number generations. It contains a parallelization uniform random number generator and a normal random number generator.
The uniform random number generator uses the Lehmer random number generator. The normal random number generator uses a Box-Mueller transform using the uniform random number generator.