Reworked Complex class