* Reset slashing periods on export
* Rename old slashing period setter to SetValidatorSlashingPeriod
* Update export to reset slashing periods
* Fix cons address
* Remove old slashing period reset
* Add pending log entry
* Update slashing period tests
Closes#2812
This PR adds the flag --for-zero-height to gaiad export, which runs several alterations to the application state to prepare for restarting a new chain in a consistent fashion.
It also:
* Moves Gaia's export code to cmd/gaia/app/export.go for cleaner separation.
* Fixes an inconsistency where we treated the initChainer as happening at height -1 - it should now happen at height 0, since the first header sent by Tendermint has height 1.
* Runs the runtime invariant checks on start (in initChainer)
* Adds a few auxiliary functions to clear slashing periods
* Removes the Height field from Delegation objects in x/stake, which was not used anywhere