Fix Series.__sub__ non-nano datetime64
The original bug report was for `Series`.  This fixes that bug and includes a test that checks for `DatetimeIndex` while we're at it.  I checked and this does _not_ fix the analogous problem in `DataFrame.  I'm hoping someone else will pick up the torch on that b/c the broadcast/dispatch is still something of a mystery to me.

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