Initial implementation of rolling iterators
- [x] closes #11704
- [x] tests added / passed
- [x] passes `black pandas`
- [x] passes `git diff upstream/master -u -- "*.py" | flake8 --diff`
- [x] whatsnew entry

Hi, I have yet to implements tests, use flake8 and create a whatsnew entry as I am uncertain whether this implementation would be correct.

I would really appreciate it if someone could give me some feedback on the code.

This PR will implement iterators for window functions.

Some questions I have:

* Does DataFrame.rolling(x) yield DataFrames?
* Does Series.rolling(x) yield Series?