BUG: Avoids b' prefix for bytes in to_csv() (#9712)
Avoids b' prefix written for bytes in the `to_csv()` method (in accordance with this [proposal](https://github.com/pandas-dev/pandas/issues/9712#issuecomment-635803657))

The `encoding` parameter passing in `to_csv()` method is used as the encoding scheme to decode the bytes.

Example:
```python
import pandas as pd
import sys
df = pd.DataFrame({
    b'hello': [b'abc', b'def'],
    b'world': ['pqr', 'xyz']
})
df.to_csv(sys.stdout, encoding='utf-8')
```

After the bug fix will print:
```
,hello,world
0,abc,pqr
1,def,xyz
```

Currently the `to_csv()` method prints:
```
,b'hello',b'world'
0,b'abc',pqr
1,b'def',xyz
```

- [x] closes #9712
- [x] tests added / passed
- [x] passes `black pandas`
- [x] passes `git diff upstream/master -u -- "*.py" | flake8 --diff`
- [x] whatsnew entry