completed crossover.py documentation