feat(users): Create `user_key_store` table and `begin_totp` API (#4577)

Co-authored-by: hyperswitch-bot[bot] <148525504+hyperswitch-bot[bot]@users.noreply.github.com>
Files to modify:


**user.rs**
  Modify existing code

**user.rs**
  Modify existing code

**enums.rs**
  Add:
    - enum: pub::TotpStatus

**lib.rs**
  Add:
    - mod: pub::user_key_store

**query.rs**
  Add:
    - mod: pub::user_key_store

**user_key_store.rs**
  Add:
    - function: pub::insert
    - function: pub::find_by_user_id
    - impl: impl UserKeyStoreNew
    - impl: impl UserKeyStore

**schema.rs**
  Modify existing code

**user.rs**
  Modify existing code

**user_key_store.rs**
  Add:
    - function: pub::insert
    - function: pub::find_by_user_id
    - impl: impl UserKeyStoreNew
    - impl: impl UserKeyStore

**user.rs**
  Modify existing code

**user.rs**
  Modify existing code

**db.rs**
  Add:
    - mod: pub::user_key_store

**kafka_store.rs**
  Add:
    - function: private::insert_user_key_store
    - function: private::get_user_key_store_by_user_id
    - impl: impl UserKeyStoreInterface for KafkaStore

**user.rs**
  Modify existing code

**user_key_store.rs**
  Add:
    - function: pub::insert
    - function: pub::find_by_user_id
    - impl: impl UserKeyStoreNew
    - impl: impl UserKeyStore

**app.rs**
  Modify existing code

**lock_utils.rs**
  Modify existing code

**user.rs**
  Modify existing code

**domain.rs**
  Add:
    - mod: pub::user_key_store

**user.rs**
  Modify existing code

**user_key_store.rs**
  Add:
    - function: pub::insert
    - function: pub::find_by_user_id
    - impl: impl UserKeyStoreNew
    - impl: impl UserKeyStore

**user.rs**
  Modify existing code

**types.rs**
  Modify existing code

**mock_db.rs**
  Modify existing code