optimize Complex +/- Real

Previously, adding a `Complex` to a `Real` would first promote the latter to a `Complex` value.