Return meaningful errors for locked wallets.
Return meaningful errors for locked wallets.

This change adds a check for a valid (32-byte length) secret before
attempting to encrypt or decrypt any addresses.  If the check fails, a
meaningful error (ErrWalletLocked) is returned to the caller, rather
than an error out of the aes package.

decred/dcrwallet,jrick/dcrwallet,jrick/btcwallet,synrg-labs/btcwallet,jrick/dcrwallet,Stash-Crypto/btcwallet,synrg-labs/btcwallet,Roasbeef/btcwallet,jrick/btcwallet,btcsuite/btcwallet,Roasbeef/btcwallet,Stash-Crypto/btcwallet,btcsuite/btcwallet,decred/dcrwallet