you can't plausibly ALTER TABLE in sqlite, so we create the new table with the right schema to start with.