Added support for complex numbers by using a new custom Complex for storing numbers and doing calculations instead of using doubles.