Geo: fixes geo_shapes which intersect dateline

If a geo_shape had edges which either ran vertically along the dateline or touched the date line but did not cross it they would fail to parse.  This is because the code which splits a polygon along the dateline did not take into account the case where the polygon touched but did not cross the dateline.  This PR fixes those issues and provides tests for them.

Close #7016
@jpountz I forgot to delete them before I made the PR. I realised after creating these tests that they are not relevant as you cannot have a hole share a point with the main polygon, which makes sense since a hole which intersects with the edge of the main polygon isn't actually a hole. I will delete these tests in the next commit