[GEO] Fix for NPE enclosed in SearchParseException for a "geo_shape" fil...

...ter or query

This fix adds better error handling for parsing multipoint, linestring, and polygon GeoJSONs.  Current logic throws a NPE when parsing a multipoint, linestring, or polygon that does not comply with the GeoJSON specification. That is, if a user provides a single coordinate instead of an array of coordinates, or array of linestrings, the ShapeParser throws a NPE wrapped in a SearchParseException instead of a more useful error message.

Closes #8432
Unlike LinearRing, LineString, and Polygon, the spec doesn't explicitly state a minimum number of points.  Since you raised a very valid question - and as I think about more use cases - I think you're correct to point this out as not being user friendly.  In fact, accepting 0 coordinates could lead to a lot of silent failures and extremely unhappy users.

I made the change to throw a Parse Exception if an empty array is provided.