added some randomness at the top level. Also made space for passing system parameters from main to runGame