bpo-31281: Fix pathlib.Path incompatibility in fileinput
========================================================
`fileinput` otherwise works fine with `pathlib.Path` filenames, but when `inplace` is set to `True`, the `Path` object needs to be converted to a `str` first, or appending a `str` suffix with `+` would fail:
```py
import fileinput
import pathlib
with fileinput.input(files=(pathlib.Path('in.txt'),), inplace=True) as fp:
for line in fp:
print(line, end='')
```
=>
```python-traceback
Traceback (most recent call last):
File "./pathlib-fileinput.py", line 6, in <module>
for line in fp:
File "/Users/zmwang/.pyenv/versions/3.6.1/lib/python3.6/fileinput.py", line 250, in __next__
line = self._readline()
File "/Users/zmwang/.pyenv/versions/3.6.1/lib/python3.6/fileinput.py", line 331, in _readline
self._filename + (self._backup or ".bak"))
TypeError: unsupported operand type(s) for +: 'PosixPath' and 'str'
```
<!-- issue-number: bpo-31281 -->
https://bugs.python.org/issue31281
<!-- /issue-number -->