arg throws away common parts of re and im parts

With these changes, something like arg(3*(a+I*b)) now simplifies to arg(a+I*b).
Why not `list(x.args)?