This is related to issue #3741 where fetching data from
invalid store, package panic.
Modify subspace.go to return errors instead of panic.
Also update other packages that import subspace and
handle errors.
Merges the keybase and Ledger code from go-crypto (which is no more) into the SDK
Adds support for Ledger into gaiacli
Cherry-picks updated error handling from #1158