Support for Operator Overloading on all functions!

TODO: FIX CDAL PRINT STATEMENTS