Provides an explicitly clear API clearer to program around. Also adds additional time code to handle an edge case.
The Tendermint machine uses the passed in number as the block's being worked on number. Substrate passed in the already finalized block's number. Also updates misc comments.