Truncating long numbers when casting astype("string") or when printing
Example:

```
b = pd.Series({"playerid": 544911367940993}, dtype='float64')
b['playerid'].astype('string')
```

This should output 544911367940993 or 544911367940993.0, but instead it prints '5.44911367941e+14'.

It seems this is because Pandas uses str(b['playerid']) instead of b['playerid'].**repr**()
