API: Which DatetimeIndex/TimedeltaIndex ops should infer frequency?
In DatetimeIndex/TimedeltaIndex arithmetic operations sometimes we return `type(self)(values, freq="infer")` and other times we return `self._shallow_copy(values, freq=None)`.  I don't see any clear logic guiding when to do which.  Anyone else know?