enhance wallet error message more descriptable with failure reason.
# Checklist - [x] have run AriesFrameworkTests - [x] I have run AllTests # Description it would be help to solve problems if framework provide detailed messages about indy when an error occurs in wallet .
# Checklist - [x] have run AriesFrameworkTests - [x] I have run AllTests # Description Checking the actual existance of the file may be a better approach than relying on UserDefault to determine the existence of the wallet. In this task, I changed the way to manage master secret id. I referenced this from aries-cloudagent-python. Master secret id is just a label given to the master secret stored in the wallet, so there is no need to create it arbitrarily.
# Checklist - [x] I have run AriesFrameworkTests - [x] I have run AllTests # Description Exclude walletKey from AgentConfig encode/decode. It should be stored separately in a safer place.