* fix: allow certain keychain operations without a password
Listing, removing, renaming etc keys do not require a password so
the user should not be required to provide one.
This means we don't have to prompt the user to create a password
when they aren't going to do any operations that require a password.
* fix: make keychain pass optional
* fix: support libp2p creation without keychain pass
Co-authored-by: Jacob Heun <jacobheun@gmail.com>