The intent of this is to allow for simulating things like slashing for not
voting on a governance proposal. To test this, you would queue all the validator votes
in future blocks, and keep track of which ones you didn't slash. Then you could add queue a
"check governance slashing operation" after the voting period is over.
* This demonstrates that the state machine is non-deterministic if there
are more than two txs in a block.
* fix non-deterministic map iteration
* (squash this) fix build errors
* (squash this) iterate using range
* Update to tendermint v0.22.6-rc0
This is comprised of updating the crypto imports / API
* (squash this) switch to v0.22.6
If this passes tests, I'll squash this commit and update the PR.
* WIP, ammend this later
* Add randomized testing suite
* Fix linting
* Auth invariant check, method to take in seed, way to run invariant check less frequently
* Fix merge conflicts
* Update bank
* Fix error on zero input by skipping it
* Add PeriodicInvariant Function
* Abstract verification / send functionality
* Fix liniting errors (PeriodicInvariant godoc)
* Update formatting and docs of randomization
* Minor refactor, update godocs
* Update godoc for mock
* Export TestAndRunTx
* fix cyclic dependencies
* Address PR most pr comments
* Fix merge conflict: Bring back codec.seal
* remove debug code, fix linting
* Fix merge conflicts