It's quite fun to play with :) added an isMaxFitness() function for
candidates so it stops when the max fitness is found (which can simply
be false for ones with undefined solutions). Running some tests, it
looks like the number of iterations is somewhere in the neighborhood of
x^n, where n is relative to how large the arrays are. nifty stuff.