Auto-typing the password, instead of copying it to the clipboard, is
more secure, since any process can read the contents of the clipboard.
It is also significantly more convenient, avoiding the paste step, and
works in situations where pasting isn't possible (such as into a VM
console).
If the cached session ID is not valid (e.g. `bw lock` has been run since
the cache file was written), `Vault.load()` will now attempt to unlock
the vault again and update the saved session ID.
Bitwarden can store multiple different types of items in the vault, such
as credit cards and "secure notes." These are not useful in the context
of `bwpass`, so they can be ignored when loading items from the vault.
The `bwpass` command attempts to replicate the main functionality of
`pass` on top of `bw`. Since `bw` is incredibly slow, it tries to avoid
spawning it whenever possible by caching the list of items. It also
manages the Bitwarden CLI session by reading the session token from a
file. If the file does not exist, it will prompt for the vault master
password using `pinentry`, unlock the session, and store the new token.