BUG: Fix+test division by negative zero
Discovered while trying to reconcile Series vs Index arithmetic behavior.

A couple of other small misc changes ported from other branches, will be noted inline.
is this change user facing at all? or just test comparisons? > is this change user facing at all? or just test comparisons?

Yes, just barely:

```
np.random.seed(1)
idx = pd.Index(np.random.randn(5))

>>> idx // (idx * 0)

# master
Float64Index([inf, -inf, -inf, -inf, inf], dtype='float64')

# PR
Float64Index([inf, inf, inf, inf, inf], dtype='float64')
```

Similar for divmod.  truediv is unchanged.  Series is unchanged. > > is this change user facing at all? or just test comparisons?
> 
> Yes, just barely:
> 
> ```
> np.random.seed(1)
> idx = pd.Index(np.random.randn(5))
> 
> >>> idx // (idx * 0)
> 
> # master
> Float64Index([inf, -inf, -inf, -inf, inf], dtype='float64')
> 
> # PR
> Float64Index([inf, inf, inf, inf, inf], dtype='float64')
> ```
> 
> Similar for divmod. truediv is unchanged. Series is unchanged.

ok that's fine then, wouldn't bother with a release note. thanks @jbrockmendel 