value_counts bin limit truncation
#### Code Sample, a copy-pastable example if possible

```python
import pandas as pd
s = pd.Series([0.9999,2,3,4.0001])
bins = 4
hist_data = s.value_counts(bins=bins, sort=False)

"""hist_data is shown below
(0.996, 1.75]    1
(1.75, 2.5]      1
(2.5, 3.25]      1
(3.25, 4.0]      1
dtype: int64
"""
#The following statement should be true (according to the data returned by Series.value_counts
hist_data.index[-1].right >= s.iloc[-1]

```
#### Problem description

value_counts returns a series.  The index of that series contains the histogram bin limits.  As shown in the code, hist_data shows that there is 1 value in the range (3.25, 4.0], but that isn't the case. 4.0001 is not in that range.  It appears that the bin limits are truncated to 3 decimal places.  This does not appear to be a problem on the minimum value in the series as 0.9999 does lie in the range (0.996, 1.75].

#### Expected Output
True 

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

<details>

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 63 Stepping 2, GenuineIntel
byteorder: little
LC_ALL: None
LANG: None
LOCALE: None.None

pandas: 0.23.3
pytest: 3.6.1
pip: 18.0
setuptools: 39.2.0
Cython: None
numpy: 1.14.5
scipy: 1.1.0
pyarrow: None
xarray: None
IPython: 6.4.0
sphinx: None
patsy: None
dateutil: 2.7.3
pytz: 2018.5
blosc: None
bottleneck: None
tables: None
numexpr: None
feather: None
matplotlib: 2.2.2
openpyxl: None
xlrd: None
xlwt: None
xlsxwriter: None
lxml: None
bs4: None
html5lib: 1.0.1
sqlalchemy: None
pymysql: None
psycopg2: None
jinja2: 2.10
s3fs: None
fastparquet: None
pandas_gbq: None
pandas_datareader: None
</details>
