FloatArrayFormatter._format_strings cannot handle float arrays containing NaNs
Get `FloatingPointError` ([stack trace](http://pastebin.com/m1fZH4ie)) if call `to_html` method of a DataFrame that contains some NaN values.  To reproduce:

``` python
import pandas as pd
import numpy as np
pd.DataFrame(data=[np.nan, 3, 4]).to_html()
```

The problem seems to be that `FloatArrayFormatter._format_strings` assumes that the array it is trying to format as a string contains no `np.nan` values when checking to see if the array contains any very large or very small values.

Version info:

```
commit: None
python: 3.4.3.final.0
OS: Linux
machine: x86_64
pandas: 0.16.0
Cython: 0.22
numpy: 1.9.2
```
