Allow the randomly generated seed to be saved so that experiments / benc...

...hmarks can be recreated in the future

Because firstSeed() and nextSeed() are not member variables, I had to add a locally global (within the .cpp file) variable to store the seed. I couldn't think of a better way to do this.

Also, is there a better style guideline for this global var? 
not unless the constructor is called. I think you need to add () for that. In any case, that is not such a great idea. We should call firstSeed if not yet initialized. I think firstSeed() should always return the same thing. We shold just cache the flag and the first seed values inside firstSeed()