BUG: Fix read_fwf with compressed files.

`gzip` and `bz2` both now return `bytes` rather than `str` in Python 3,
so need to check for bytes and decode as necessary.
Use passed encoding to decode bytes
Merge pull request #4784 from jtratner/fix-read-fwf-with-compression

BUG: Fix read_fwf with compressed files.