Add three tests requested in review:
- TestParseMigrationVersion: table-driven test with 9 cases covering valid
filenames, descriptions, invalid alpha/mixed, and empty string
- TestApplyMigrations_Idempotent: verifies running migrations twice is a
no-op with no duplicate rows in schema_migrations
- TestBootstrapMigrationsTable_FreshDatabase: isolation test verifying
bootstrap creates schema_migrations table with version 0 row