Fixed #8149 -- Fixed File.__iter__() to handle other newline types.

Fixed File to use universal newlines. The following are recognized as
ending a line: the Unix end-of-line convention '\n', the Windows
convention '\r\n', and the old Macintosh convention '\r'.
That part looks confusing, as `cr` and `lf` will potentially be used on `buffer_`, not only `chunk`.
Instead, I would define two simple helpers `endswith_cr` / `endswith_lf` within `__iter__`  — maybe there is some simpler way to do that but I couldn't find one:
```Python
def endswith_cr(line):
    return line.endswith('\r' if if isinstance(line, six.text_type) else b'\r')
```