Use `os.path.splitext` to check file extensions.
fixing r.binary as a key
Hacked in lazily deserialized datum_t
Bug fix to datum serialization from previous commit
Another bug fix to lazy datum deserialization
Minor deserialize_lazy cleanup
Make lazy datum serialization smarter: Only do it sometimes.
Also made it backwards compatible.
Cleaned up lazy datum deserialization logic. Completely hid LAZY_SERIALIZED type from public datum_t interface.
Style fix
Merge branch 'next' into daniel_lazy_datum_deserialize

Conflicts:
	src/rdb_protocol/datum.cc
Removed unnecessary line
changing key ordering so that binary sorts as a pseudotype, and fixed pseudotype ordering in datum_t::cmp
fixing secondary key format for common prefixes - this breaks sindex compatibility with previous versions
adding test for index sorting
fixing test-runner for using a running server instance
Use varint for serializing lazy datum size
Force full deserialization before writing to disk.
Made print_secondary not take a default value for tag_num.
Added and made use of type reql_version_t, instead of using cluster_version_t for reql versions.

(Very soon we might be passing reql versions over the cluster, and it would
be weird to be sending cluster_version_t values.)
Made print_secondary and its extractors take a reql version, passed up the reql version everywhere except to sindex_readgen_t.