BUG: Timedelta.__floordiv__ - need historical context
```
>>> pd.Timedelta(days=3, hours=4) // np.datetime64('NaT')
-1
```

`Timedelta.__floordiv__` and `__rfloordiv__` begin with:

```
        if hasattr(other, 'dtype'):
            # work with i8
            other = other.astype('m8[ns]').astype('i8')
```

I _think_ this is a historical artifact from early numpy versions, because in core.ops there is a comment:
```
            # time delta division -> unit less
            # integer gets converted to timedelta in np < 1.6
            if ((self.is_timedelta_lhs and self.is_timedelta_rhs) and
                    not self.is_integer_rhs and not self.is_integer_lhs and
                    self.name in ('__div__', '__truediv__')):
```

Before I try to fix `Timedelta.__floordiv__` can someone knowledgeable weight in on why all dtypes are being converted to i8?