Complex Module (Resolves #47)

I've implemented some basic functions:
Stuff yet to be implemented:
- [x]  add
- [x]  sub
- [x] mul
- [x] div
- [ ] pow
- [x] is_zero
- [x] is_one
- [x] add tests

`compare`/`is_positive`/`is_negative` cannot be implemented as complex numbers cannot be totally ordered

I think you should add tests with something less degenerate than 2, -1, 1. Why not something like `r1=1/2+i*3/5` and `r2=2/3+i*6/7` or something like that.