Bring back types to represent old metadata, but confined to namespace pre_v1_16. Add functions to migrate old metadata to new.
Make migration compile, but it's not tested yet.
Fixed `.between.distinct`.
Added tests for `.between.distinct`.
Added more tests.
Add unittest for migration. (It hasn't been tested yet.)
Pre-v1.16 metadata migration test passes.
Add a unit test for migrate_vclock() and fix a bug that it exposed.
Merge branch 'reql_admin' into tim/migration
Merged.
Improved process_headers.pl and fixed newly-found include weirdness in s2.
Fixed process_timings_output.pl.
Merge branch 'sam_process_headers_improvement' into sam_2134_base
Made log_serializer_t::unregister_read_ahead_cb disallow spurious unregister operations.
Removed default expected_change_count parameter in txn_t constructor.

Only a unit test used it.

Conflicts:
	src/unittest/new_leaf_node_test.cc
Removed some KSI comments.  Being more fatalistic.
Added and made use of half_intrusive_list_t.
Made some unit tests use distant_past instead of invalid.
Removed an RSI instructing me to remove commented out code (in changefeed.cc).
Removed fifo enforcer peanut gallery KSIs.