GeoStore

**DO NOT MERGE**

I made the generally to set having discussion around GeoStore. There are several things I still need to do.

* Write more tests for GeoStore and RTree.
* Figure out how to package stores. Should they be part of GeoStore or separate packages?
* I think there is a bug with `RTree.remove` probably related to the recent refactor.
* Write doc for `GeoStore`.
* Write some samples for `GeoStore`. Including doc for creating your own stores.
* Make sure all old samples work.