How to create a wallet canister locally?

Hi, I’m interested in wallet canister. Now a wallet canister was provided to me with pre-loaded cycles, but how can I create a new wallet canister with new identity locally so that I can test some functions?
And will the future design of the wallet for both ICP and cycles is actually a canister?