When exported to CSV file, category data should be considered non numeric
#### Code Sample, a copy-pastable example if possible

```python
In [32]: df = pd.DataFrame({'a': list('abc'), 'b': range(3), 'c': range(3)})
In [33]: df['c'] = df['c'].astype('category')
In [34]: df.dtypes
Out[34]: 
a      object
b       int64
c    category
dtype: object

In [35]: import csv
In [36]: df.to_csv("test.csv", quoting=csv.QUOTE_NONNUMERIC)
In [39]: !head test.csv
"","a","b","c"
0,"a",0,0
1,"b",1,1
2,"c",2,2
```
#### Problem description

Although the 'c' column data are made just of numeric values, it is categorical data. These kind of data shouldn't be considered numeric, so it must be quoted when I generate the csv file with the option: `quoting=csv.QUOTE_NONNUMERIC`

CSV isn't a very sophisticate format to export data, but the ability to already say that some data isn't numeric, would make it richer. It would make it easy to share data, and spare my users to uncorrectly identify a field as a numeric value.

#### Expected Output
```
In [39]: !head test.csv
"","a","b","c"
0,"a",0,"0"
1,"b",1,"1"
2,"c",2,"2"
```

#### Output of ``pd.show_versions()``

<details>

[paste the output of ``pd.show_versions()`` here below this line]

pd.show_versions()

INSTALLED VERSIONS
------------------
commit: None
python: 3.6.6.final.0
python-bits: 64
OS: Windows
OS-release: 10
machine: AMD64
processor: Intel64 Family 6 Model 60 Stepping 3, GenuineIntel
byteorder: little
LC_ALL: None
LANG: None
LOCALE: None.None

pandas: 0.23.4
pytest: 3.8.0
pip: 10.0.1
setuptools: 40.2.0
Cython: 0.28.5
numpy: 1.15.1
scipy: 1.1.0
pyarrow: 0.9.0
xarray: None
IPython: 6.5.0
sphinx: 1.7.9
patsy: 0.5.0
dateutil: 2.7.3
pytz: 2018.5
blosc: None
bottleneck: 1.2.1
tables: 3.4.4
numexpr: 2.6.8
feather: 0.4.0
matplotlib: 2.2.3
openpyxl: 2.5.6
xlrd: 1.1.0
xlwt: 1.3.0
xlsxwriter: 1.1.0
lxml: 4.2.5
bs4: 4.6.3
html5lib: 1.0.1
sqlalchemy: 1.2.11
pymysql: None
psycopg2: None
jinja2: 2.10
s3fs: None
fastparquet: None
pandas_gbq: None
pandas_datareader: None

</details>
