add check for infinity in __call__ of EngFormatter
EngFormatter throws an exception if passed 'inf' as below.

This patch checks for infinity and just returns 'inf' in that case.  The fix is analagous to the recent fix for NaN: 

https://github.com/pydata/pandas/commit/d0734ba4d0f4c228110dc3974943ce4ec2adeea4

``` python

import pandas
import pandas.core.format as fmt

ef = fmt.EngFormatter()
ef(pandas.np.inf)

...
```

---

OverflowError                             Traceback (most recent call last)
<ipython-input-17-c4aa659346ee> in <module>()
      3 
      4 ef = fmt.EngFormatter()
----> 5 ef(pandas.np.inf)

/usr/lib/python3/dist-packages/pandas/core/format.py in **call**(self, num)
   2485 
   2486         if dnum != 0:
-> 2487             pow10 = decimal.Decimal(int(math.floor(dnum.log10() / 3) \* 3))
   2488         else:
   2489             pow10 = decimal.Decimal(0)

OverflowError: cannot convert Infinity to integer
