add recombine and two point crossover functions. small formatting fixes