points_in_path can fail with NaN data

```python

from matplotlib.path import Path
import numpy as np
box = np.array([[0, 0], [1, 0], [1, 1], [0, 1], [0, 0]])
p = Path(box)
test = np.array([[np.nan, 0.5]])
p.contains_points(test)  # array([ True], dtype=bool)
```

I would also add a test on the length.