Rewrite the interface of fitness function

Add: Composition::evaluate_fitness_value
Changed: GeneticAlgorithm::crossover()
Note: some example for the use of Composition::evaluate_fitness_value in
GeneticAlgorithm::crossover
Modify to gen Python script
Merge remote-tracking branch 'origin/fitness-interface'