* Create typed client helpers for querying chain state storage items declared by
'decl_storage!'.
* Update substrate-rpc-custom functions to use async await syntax.
* The implementation of substrate-rpc-custom was a bit verbose and repetitive.
This commit makes the implementation simpler by intruducing a struct which
represents query for a typed value in storage. The new struct is called
StorageQuery. A StorageQuery wraps a raw StorageKey but is not directy
constructable. To construct a StorageQuery, the user must supply an
implementation of a srml_support::storage::generator trait such as
StorageValue or StorageMap.
A type implementing one of the generator traits can be aquired by:
A) marking a storage item as pub within a call to decl_storage (recommended)
or B) implementing one of the generator types manually.
While option B may sometimes me necessary, it's not recommended because
separate manual implementaions may lose sync with the original definition.
* drop unused dependency
* fmt
* Remove unnecessary pub from Authorities field in test-runtime storage
declaration.
This field was added to support a test in an earlier commit. The
test no longer relies on test-runtime so the change can be reverted.
* Move it to srml as support extension.
* Fix long lines.
* Fix.