Iterableiterator
If the approach is not overkill, it can be used also in `UTF8Recoder` and `UnicodeReader` from `pandas/common/io.py`. Closes #12153.

see #9496 
 `TableIterator` in `io/pytables.py` is still a bit too cryptic to me, but I can try to take a look at it next week.
 ok on doing `HDFStore` iterator in another issue.
 I removed edits to `BotoFileLikeReader` because as far as I can judge the failing tests were due to it (through its ancestor `key.Key`) already being an iterable, and knowing nothing about this format/service it's hard for me to debug.
 thanks @toobaz 

I have marked off `csv,stat,sas`, remaining are `hdf` & `msgpack` which are in #9496 
