* Allow applications (through ABCI) to update the ValidatorSet.
* Use the chain as its own CA for its nodes and validators.
* Graceful handling/recovery for apps that have non-determinism or fail to halt
* Consensus version 0.8: Update so `Commit` is not just +2/3 precommits for a block, but the entire `JSet`.  While the commit size may grow unbounded in size, it makes a fork immediately slash a +1/3 Byzantine subset of validators.