- we've rescued traversal here but i think the approach to MigrationStep
has to change totally
- this is a new approach which means I have to rewrite the tests again
and re-do "stamp", but better control at the version table level
- OK this seems to traverse correctly across diamonds now, now to rewrite
all the tests and haven't even started docs yet...