First commit
Add GUIWindow class to create opengl window
Changing project to Genetic Programming in Python
Add ability to initialize tree via full method
Add Crossover implementation
Add tree mutation implementation and tests
Add DataLoader implementation and tests
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
Refactor data loade mimick static methods via functions

The DataLoader instead of being a class, it is now a module of free
functions, there was no need to make it a class.
Add TreeEvaluator implementation and tests
Add unittest runner
Add the ability to throw away trees that do not evaluate

Some trees during evaluation would fail because of, for example, Zero
Division Errors, such errors cannot be resolved therefore the tree must
be disgarded. The functions and evaluation modules of playground has
been added an Exception to handle such scenarios, which results the
tree being removed from the population without any major problems.
Refactor crossover to be more diverse

Instead of a uniform crossover index, the crossover index are not
guaranteed to be uniform, else the trees which result from this
operation may hinder diversity, the trees could end up having the same
shapes.
Temp fix for mutation

There was a problem when mutating INPUT nodes, in that if there is only
1 input node, the mutation method would loop forever trying to find
another input node that does not exist.
Refactor default score in Tree

The default score in Tree should not be 0.0 else it could be difficult
to determine whether the Tree has been evaluated or the evaluation is
0.0.
Minor Edits
Add reproduction implementation and test