using the avgfitness for crossover without resetting the crossover makes the evaluator go through all the evaluator in one quick swoop.
To solve I added a reset on it
issue with accessing the static volatile avgFitness - implemented a lock instead.