This is just a cleanup work to hide some of the private state of
ReplSetTest so it is easier to encapsulate and add new logic. Also enables
strict mode.
With multithreaded replication, the call site for retrying if Cloner misses documents
was changed. We now much grab a write lock before calling shouldRetry().
I also changed the logging to always log when a retry situation is present.
These situations can result if Cloner misses a document because it was updated, grew,
and moved backward on disk.