Issue 4007: 	Incorrect Real & Imaginary parts of Irrational functions

Functions, as_real_imag and expand_complex, failed to work for cases like (1 + i)/(1 - i)

Both the functions give output in terms of re and im (that is):

```
for expand_complex:
     /        \                        /        \
re |  1 + i |  .(1 + i),    im  |  1 + i  | . (1 +i)
    | -------  |                      | --- ---   |
     \ 2   2 /                       \ 2   2 /

for as_real_imag:

     /         \           /         \
re |  1 + i  | ,  im  |  1 + i  | 
    | -------   |         |  -------  |
     \ 1 - i   /          \   i - i   /
```
Corrects the above case, giving following result for cases
```
>>> ((1 + I)/(1 - I)).as_real_imag()
      (0, 1)
>>> ((1 + 2*I)*(1 + 3*I)).as_real_imag()
      (-5, 5) 
```
Issue Reported: 
https://code.google.com/p/sympy/issues/detail?id=4007&q=irrational&colspec=ID%20Type%20Status%20Priority%20Milestone%20Reporter%20Summary%20Stars