CDRIVER-360 add additional geo index options

Changes here also resolve CDRIVER-452
Ugh. This is why I dislike ascii-arting code. Looks like a much bigger delta than it is