* reshuffle consensus libraries
* polkadot-useful type definitions for statement table
* begin BftService
* primary selection logic
* bft service implementation without I/O
* extract out `BlockImport` trait
* allow bft primitives to compile on wasm
* Block builder (substrate)
* take polkadot-consensus down to the core.
* test for preemption
* fix test build
* Fix wasm build
* Bulid on any block
* Test for block builder.
* Block import tests for client.
* Tidy ups
* clean up block builder instantiation
* justification verification logic
* JustifiedHeader and import
* Propert block generation for tests
* network and tablerouter trait
* use statement import to drive creation of further statements
* Fixed rpc tests
* custom error type for consensus
* create proposer
* asynchronous proposal evaluation
* inherent transactions in polkadot runtime
* fix tests to match real polkadot block constraints
* implicitly generate inherent functions
* add inherent transaction functionality to block body
* block builder logic for polkadot
* some tests for the polkadot API
* reshuffle consensus libraries
* polkadot-useful type definitions for statement table
* begin BftService
* primary selection logic
* bft service implementation without I/O
* extract out `BlockImport` trait
* allow bft primitives to compile on wasm
* Block builder (substrate)
* take polkadot-consensus down to the core.
* test for preemption
* fix test build
* Fix wasm build
* Bulid on any block
* Test for block builder.
* Block import tests for client.
* Tidy ups
* clean up block builder instantiation
* justification verification logic
* JustifiedHeader and import
* Propert block generation for tests
* Fixed rpc tests
* reshuffle consensus libraries
* polkadot-useful type definitions for statement table
* begin BftService
* primary selection logic
* bft service implementation without I/O
* extract out `BlockImport` trait
* allow bft primitives to compile on wasm
* take polkadot-consensus down to the core.
* test for preemption
* fix test build
* client-api type and move duty roster types to primitives
* tuple implementation for slicable
* mild cleanup of deserialization code
* stubs which handle encoding and decoding themselves
* fancier impl_stubs macro
* zero-copy slicable API
* minimal polkadot-client API
* fix WASM API generation
* move native environment stuff to substrate executor
* fix warnings and grumbles
* candidate statement importing
* import votes on validity
* import availability votes
* candidate receipt type
* make table mod public
* test context for table
* add harness for tests
* some tests for misbehavior
* produce proposal from table
* count candidate issuance as implicit vote
* keep track of messages known by validators
* fix primitives compilation
* simple BFT agreement
* kill unused macro_use annotation
* tests for BFT agreement
* test for not concluding on different prepares
* return summary upon statement import
* accept bft agreement on proposal not locally submitted
* check justification set for BFT
* BFT rewrite: vote accumulator with tests
* squash some warnings
* a few more tests for the accumulator
* add sender to table's signed statement
* implement honest node strategy for BFT
* inex -> index
* import and broadcast lock proofs
* poll repeatedly when state changes
* don't broadcast advance vote immediately if locked
* do not check validity of locked candidate
* basic tests for the strategy
* remove unused context trait and fix warning
* address some review grumbles
* address some more review nits
* fix lock import logic and add a test
* fix spaces
* fix a couple more style grumbles
* more type-safe justifications
* rename Communication enum variants
* improve some panic guard proofs
* add trailing comma