RandomNumber optimisation

No longer creates a new object for every call.