code: func (ga *GeneticAlgorithm) SimulateUntil(exitFunc func(*IGenome) bool) bool {
  	ga.exitFunc = exitFunc
  	return ga.Simulate()
  }
docs: // SimulateUntil simulates a population until 'exitFunc' returns true
  // The 'exitFunc' is passed the elite of each population and should return true
  // if the elite reaches a certain criteria (e.g. fitness above a certain threshold)