more uniformly random recombination, code is ready for refactoring and evolutionary algorithm