Added check to the GPOnePointCrossover to ensure that we don't create a
tree that is too deep when we crossover, and added default parameters as
necessary.