Implementa internal/db (db.go, migrate.go, seed.go) con GORM.

- db.go: Open(cfg) (*gorm.DB, error) con switch sqlite/postgres.
  - sqlite usa cfg.SQLitePath, crea directory se serve.
  - postgres usa cfg.PostgresDSN.
  - logger più verboso in develop.

- migrate.go: Migrate(db) che fa AutoMigrate su tutti i modelli (User, EmailVerificationToken, PasswordResetToken).
  - esegui solo se cfg.AutoMigrate=true (gestisci in app.go o in migrate.go).

- seed.go: Seed(db) idempotente se cfg.SeedEnabled=true:
  - in develop crea:
    - admin@example.com (role=admin, verified=true, password="password")
    - user@example.com (role=user, verified=true, password="password")
  - crea anche utenti demo aggiuntivi per tabella.
  - usa upsert by email (GORM clauses OnConflict dove possibile).
  - NON loggare password in chiaro.

Aggiorna/crea internal/models con i modelli necessari.