Structural Changes

Selection, Recombination, Mutation and Reinsertion have been each been
put into seperate class files to make the code more modular and easier
to improve on.