The fact that you have to construct an instance of this class is odd. Would it make sense to make the crossover methods static? I'm not really sure what I think would make the most sense here, but a conversation probably needs to be had.