Replace the monolithic schema.sql embed with a numbered migration system
following the pixa pattern:
- Add schema/000.sql: bootstrap migration creating schema_migrations table
with INTEGER PRIMARY KEY version column and applied_at timestamp
- Move full schema to schema/001.sql (renamed from schema.sql)
- Remove redundant schema/008_uploads.sql (uploads table already in main schema)
- Rewrite database.go migration logic:
- Embed schema/*.sql directory instead of single schema.sql
- bootstrapMigrationsTable() checks for table existence, applies 000.sql
- applyMigrations() iterates numbered files, skips already-applied versions
- ParseMigrationVersion() extracts version from filenames (e.g. 001.sql)
- Go code does zero INSERTs for bootstrap — 000.sql is self-contained
- Update database_test.go to verify schema_migrations table exists