* Completely rework dispatch mechanism into something modular.
Not yet complete but 75% there.
* Council vote tests.
* Fix tests.
* whitespace.
* Fix demo runtime tests.
* Fix up tests.
* Remove dead code.
* Use match for Id
* Make PrivPass better protected.
* Address other grumbles.
* Give PrivPass a private member.
* Testing PrivPass.
* Add docs.
* initial draft of the macro
* traits for all storage types
* test for list wrapper
* map API
* move generator to runtime-support
* specialize traits further for runtime storage
* restore storage vec for unhashed
* double-commit and prepare misbehavior
* get misbehavior on completion
* collect misbehavior on drop, not only on success
* kill unused transaction_index field
* add primitive misbehavior report type
* add misbehavior report transaction
* store prior session
* fix set_items
* basic checks for misbehavior reports
* crate for substrate bft misbehavior checking
* integrate misbehavior check crate
* fix comment
* new wasm binaries
* fix hash in test
* import misbehavior transactions into queue
* fix test build
* sign on digest and full proposal when proposing
* detect proposal misbehavior
* fix fallout
* restore balance/bondage types
* double-commit and prepare misbehavior
* get misbehavior on completion
* collect misbehavior on drop, not only on success
* kill unused transaction_index field
* add primitive misbehavior report type
* add misbehavior report transaction
* store prior session
* fix set_items
* basic checks for misbehavior reports
* crate for substrate bft misbehavior checking
* integrate misbehavior check crate
* fix comment
* new wasm binaries
* fix hash in test
* import misbehavior transactions into queue
* fix test build
* sign on digest and full proposal when proposing
* detect proposal misbehavior
* fix fallout
* restore balance/bondage types