If both x and y contain NAs at the first or last index, `chull()` always returns
as the result:
> chull(1:10, c(1:5, 5:1))
 10 1 5 6
> chull(c(1:10, NA), c(1:5, 5:1, NA))
 1 11
> chull(c(NA, 1:10), c(NA, 1:5, 5:1))
 1 11
I filed this too quickly: `chull()` fails generally if there are NAs in x and y at the same locations, not just at the first or last:
> nas <- sample(2:99, 20)
> x <- runif(100)
> y <- runif(100)
> x[nas] <- NA
> y[nas] <- NA
> length(chull(x[-nas], y[-nas]))
Obviously returns of these two calls must contain different indices, but should
represent identical polygns and therefore have the same length...
As nothing said NA values would be omitted these were not the same polygons, and NAs were treated as actual values.
Non-finite values (include NA) now give an explicit error.