series.rolling doesn't create windows when values are NaN or inf 
#### Code Sample, a copy-pastable example if possible

```python
def fn(window):
    return(0)

pd.Series([1, 2, 3, np.inf, 4, 5, 6]).rolling(2).apply(fn)
```

output:
```
0    NaN
1    0.0
2    0.0
3    NaN
4    NaN
5    0.0
6    0.0
```
#### Problem description
If `series.rolling(x).apply(fn)` does not create a window if any of the values in said window are inf/NaN, and instead returns NaN for the window in question. This seems like an optimisation to reduce the number of window comparisons, but this may not be the behaviour intended by the user.

#### Expected Output
```
0    NaN
1    0.0
2    0.0
3    0.0
4    0.0
5    0.0
6    0.0
```

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

<details>
```
INSTALLED VERSIONS
------------------
commit: None
python: 3.6.5.final.0
python-bits: 64
OS: Linux

pandas: 0.24.2
```
</details>
