Further fixes to integrate Complex module with CSymPy

- [x] add
- [x] mul
- [x] pow
- [ ] tests
I want both the real and imaginary part to be non-zero. It is a bit different than `!is_zero()`. Which is why the name is not apt.