BUG: fix Series[timedelta64] arithmetic with Timedelta scalars
closes #18846 

Before:

```
>>> ser = pd.Series([pd.Timedelta(minutes=5, seconds=3)] * 3)
>>> ser.iloc[-1] = np.nan
>>> scalar = pd.Timedelta(minutes=5, seconds=4)
>>> ser // scalar
[...]
TypeError: can only operate on a timedeltas for addition, subtraction, and division, but the operator [__floordiv__] was passed

>>> scalar / ser
0   00:00:00.000000
1   00:00:00.000000
2               NaT
dtype: timedelta64[ns]

>>> scalar.to_pytimedelta() / ser
0   00:00:00.000000
1   00:00:00.000000
2               NaT
dtype: timedelta64[ns]

>>> scalar.to_timedelta64() / ser
0   00:00:00.000000
1   00:00:00.000000
2               NaT
dtype: timedelta64[ns]

>>> scalar.to_pytimedelta() // ser
[...]
TypeError: can only operate on a timedeltas for addition, subtraction, and division, but the operator [__rfloordiv__] was passed

>>> scalar.to_timedelta64() // ser
[...]
TypeError: can only operate on a timedeltas for addition, subtraction, and division, but the operator [__rfloordiv__] was passed

```

After
```
>>> ser // scalar
0    0.0
1    0.0
2    NaN
dtype: float64

>>> scalar / ser
0    1.0033
1    1.0033
2       NaN
dtype: float64

>>> scalar.to_pytimedelta() / ser
0    1.0033
1    1.0033
2       NaN
dtype: float64

>>> scalar.to_timedelta64() / ser
0    1.0033
1    1.0033
2       NaN
dtype: float64

>>> scalar.to_pytimedelta() // ser
0    1.0
1    1.0
2    NaN
dtype: float64

>>> scalar.to_timedelta64() // ser
0    1.0
1    1.0
2    NaN
dtype: float64

```

Also identified a bug in `Timedelta.__floordiv__`, noted it in #18824, will address that separately.

- [ ] closes #xxxx
- [x] tests added / passed
- [x] passes `git diff upstream/master -u -- "*.py" | flake8 --diff`
- [x] whatsnew entry
