Resolve "Operator Overloading"
- Adds working implementation for operation overloading for the operations "+", "-", "*", "/" so that when "a = b + c" then an Addition operation is created that takes b and c as output and is returned and then assigned to a. This also work for constant arguments so that "a = b + 5" returns a ConstantOperation object instead. However the syntax "a = 5 + b" does not work since it is not possible to overload the integer implementation of the "+" operation.
- Adds tests that verify that the operation overloading works as intended.
- Changes old incorrect usage of "connect_to_port" to "connect" in the core_operations module.
Request review from @ivaha717 and @jacwa448
Closes #10 (closed)