Minimal schema migration runner.
Versions are stored both in SQLite and the stable superblock. The SQLite table is the source of truth for applied SQL; the superblock is quick canister state.