fixing memory leaks when datum_t construction throws
fixing build
Improved error checking for get_nearest and get_intersecting terms, basica GEOMETRY type sanitization in datum_t.
Added a unit test for unrecognized GeoJSON fields.
Simplified geometry subtraction error messages.
Tolerate vector clock conflicts in the blueprint

Previously, namespace_repo_t would crash if there was ever a vector clock conflict in the blueprint. Now it silently ignores the conflict; while this isn't guaranteed to preserve availability, at least the server will stay alive so that the user can fix the problem.
changing datum_t::data_wrapper_t to be RAII
Fixed constructor problems in protocol read objects.
Fix #2767 for the new geo traversal code as well.
Merge branch 'next' of github.com:rethinkdb/rethinkdb into next
Merge branch 'next' into daniel_geo
Don't generate new blueprints unnecessarily.

Previously, we would generate a new blueprint for every table after every db_create(), db_drop(), table_create(), or table_drop() operation. This lead to a lot of spurious vector clock conflicts. With this commit, we only generate a new blueprint after table_create() and only for the newly created table.
bump JavaScript driver to v1.13.0-3
merge of #2583 zombie server processes

Found that not all rethinkdb server processes were being shut down because we were relying on __exit__ being called when it goes out of scope. But those handlers are not generally called when the process exits.
Explicitly find the smallest common parent in index traversal. Fixes a bug with the previous cell range intersection test.
Add regression test for issue 2738.
Make compile on GCC
Add some includes that aren't strictly necessary but should be there anyway.
Style fixes
Merge branch 'v1.13.x' of github.com:rethinkdb/rethinkdb into v1.13.x