Implemented a geometry document field with a minimal `Geometry` enum.
Now able to add that Geometry from GeoJSON parsed from a JSON document.
Geometry is triangulated if it is a polygon, otherwise it is correctly
encoded as a degenerate triangle if it is a point or a line string.
Write accumulated triangles to a block kd-tree on commit.
Serialize the original `f64` polygon for retrieval from search.
Created a query method for intersection. Query against the memory mapped
block kd-tree. Return hits and original `f64` polygon.
Implemented a merge of one or more block kd-trees from one or more
segments during merge.
Updated the block kd-tree to write to a Tantivy `WritePtr` instead of
more generic Rust I/O.