FIX: turns out that a hybrid approach is needed.  update if it’s the same prefab, but if it gets unlinked for whatever reason, then replace the prefab.  changes to the prefab, like names, appear to not get overwritten using this method
set up some manual migration tests to make sure that I’m not breaking migration code when I change things. next up: text mesh scene