inconsistent float rounding in to_json
#### Code Sample

```python
import pandas as pd
import json
df = pd.DataFrame([{'i':i, 'value':10**-i} for i in range(0, 21)])
json.loads(df.to_json(double_precision=10))['value']

# {'0': 1.0,
#  '1': 0.1,
#  '2': 0.01,
#  '3': 0.001,
#  '4': 0.0001,
#  '5': 1e-05,
#  '6': 1e-06,
#  '7': 1e-07,
#  '8': 1e-08,
#  '9': 1e-09,
#  '10': 1e-10,
#  '11': 0.0,
#  '12': 0.0,
#  '13': 0.0,
#  '14': 0.0,
#  '15': 0.0,
#  '16': 1e-16,
#  '17': 1e-17,
#  '18': 1e-18,
#  '19': 1e-19,
#  '20': 1e-20}

```
#### Problem description

`to_json` rounds floats roughly between  `10**-double_precision` and `10**-16` to zero, but doesn't round very small floats.

This is a problem when roundtripping data - the ordering of rows changes incorrectly if sorted by a column with small floats.

#### Expected Output

```
{'0': 1.0,
 '1': 0.1,
 '2': 0.01,
 '3': 0.001,
 '4': 0.0001,
 '5': 1e-05,
 '6': 1e-06,
 '7': 1e-07,
 '8': 1e-08,
 '9': 1e-09,
 '10': 1e-10,
 '11': 0.0,
 '12': 0.0,
 '13': 0.0,
 '14': 0.0,
 '15': 0.0,
 '16': 0.0,
 '17': 0.0,
 '18': 0.0,
 '19': 0.0,
 '20': 0.0}
```
or
```
{'0': 1.0,
 '1': 0.1,
 '2': 0.01,
 '3': 0.001,
 '4': 0.0001,
 '5': 1e-05,
 '6': 1e-06,
 '7': 1e-07,
 '8': 1e-08,
 '9': 1e-09,
 '10': 1e-10,
 '11': 1e-11,
 '12': 1e-12,
 '13': 1e-13,
 '14': 1e-14,
 '15': 1e-15,
 '16': 1e-16,
 '17': 1e-17,
 '18': 1e-18,
 '19': 1e-19,
 '20': 1e-20}

```


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

<details>

```text
INSTALLED VERSIONS
------------------
commit: None
python: 3.6.6.final.0
python-bits: 64
OS: Linux
OS-release: 4.13.0-46-generic
machine: x86_64
processor: x86_64
byteorder: little
LC_ALL: None
LANG: en_US.UTF-8
LOCALE: en_US.UTF-8

pandas: 0.23.4
pytest: 3.9.1
pip: 18.1
setuptools: 40.4.3
Cython: 0.29
numpy: 1.14.3
scipy: 1.1.0
pyarrow: None
xarray: None
IPython: 7.0.1
sphinx: 1.8.1
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: None
matplotlib: 3.0.0
openpyxl: 2.5.9
xlrd: 1.1.0
xlwt: 1.3.0
xlsxwriter: 1.1.1
lxml: 4.2.5
bs4: 4.6.3
html5lib: 1.0.1
sqlalchemy: 1.2.12
pymysql: None
psycopg2: 2.7.5 (dt dec pq3 ext lo64)
jinja2: 2.10
s3fs: 0.1.3
fastparquet: None
pandas_gbq: None
pandas_datareader: None

```
</details>
