Intermediate checkpoint of all changes before we refactor mirror.sh
Separate out mirroring from replay (which will run inside the VM)