Added binary Files made in Makefile to gitignore
Changed All Structures and Methods to Use Unions

Create a Union and Value type to make it easier to handle types inside
the various data structures.

Removed Trees as well.
Modified TODO List
Simplified the create_pair Methods for Values
Added a Union Operation
Added Equality Checks for All Custom Types

Added a length to set to make comparison easier.

Comparisons added:
* set
* pair
* value