Remove Indivdual class
Refactor TreeInitializer to make it better

There was a problem in regards to adding input nodes to the tree,
because there was some logical error in determing the random number of
inputs one can insert. Also at some point the number of terminal nodes
was less then input nodes, that problem is now fixed.
Add Selection class implementation and tests

Can now select using either roulette selection or  tournament.
Add FunctionRegistry implementation and tests