[native_rust_library] refactor helper structs to avoid duplication
Summary: Rather than introduce more optional fields to the existing structs for reserved password and wallet registration, I decided to refactor the structs entirely.
Test Plan: registered and logged in a wallet user and a password user on native. verified that DDB has all the correct keys and other info
Reviewers: will, bartek
Reviewed By: bartek
Subscribers: ashoat, tomek
Differential Revision: https://phab.comm.dev/D11861