writeMastersOnly strategy for split_clone workers

Primary reviewer: @alainjobart 

WIP for implementing the writeMastersOnly strategy. Spent a while mucking around to make the tests pass...

Anyways, this is an early review to "show my work". Still a few things left to do, in order:

1. Change the unit tests to not be so hacky. I want to add a new test case instead of modifying the old one (so we'll have something like TestSplitCloneWriteAll and TestSplitCloneWriteMastersOnly)
2. Look at integration test coverage and add tests there for the new strategy
3. Improve findTargets so that it just reads the global Shard record instead of doing FindAllTabletAliasesInShard and then filtering that down to masters.
4. Improve exception handling so that we retry on failed master queries, after re-resolving the topology

3 and 4 are important, but I'm leaving them until the end because I think we don't actually need those features as soon as the rest
I do not know a whole lot about this test. As far as I can tell, this test does write into the source shard, and then read from a destination replica, which tests that filtered replication + mysql replication both work correctly. This test passes when I add this flag.

However, I don't know of any explicit way to check that mysql filtered replication is indeed working.

(it seems bad that this test will silently pass if I remove this flag... or remove the underlying functionality)