It is occasionally possible to see a YZ AAE repair in normal operation
if we happen to be running the exchange FSM while writes are occurring,
and we compare the KV tree (which already has the new data inserted)
with the YZ tree (which doesn't have the data inserted yet).
This ends up triggering an extra call to get_map, which could cause some
earlier parts of this test to fail when it expected 60 calls but saw 61.
To fix this, we can simply disable AAE at the start of the test, and
then enable it later when we get to the part of the test that requires
AAE.
Specifically, introduce the `gen_keys/1` and `assert_search/6` functions
into yokozuna_rt module and refactor tests to use them instead of copied
and pasted code fragments.
* wait_for_index on write data due to use in upgrade tests
* clean-up other tests to that test upgrade from (2.0.5->2.0.6/2.1.1->2.1.2), namely yz_extractors
* clean-up tests that can start using yokozuna_rt helpers
* add count_calls and helpers for tracing fn calls (with dbg)
* add yz_extractors test to check for updates made in RIAK-1673
* add yz_noop_extractor intercept for testing a custom mimetype for extractor