Wip migration test work

A couple of commits arising from my work to set up migration testing tools that rely on realistic.py.  The changes to readwrite are because it was frustrating to work with while still doing things the old way from before we had common.setup(), and its required configuration was inconsistent with the sample config in the repo.