changed quality function to so we only need to calculate it once
need to test that crossover increments the Id value correctly