base speculation staleness on time
base speculation staleness on time

Previously, we based the stale speculation check on the `_production_enabled` flag which is set, at most, once per process.  This lead to a situation where a node which fell behind would still speculate.  This changes that check to be based on the age of the head block so, nodes which fall behind will stop speculating.  NOTE, this only affects speculative modes, actual production should attempt to proceed despite the age of the head block.

relates to EOSIO/eos#4649

EOSIO/eos,EOSIO/eos,EOSIO/eos,EOSIO/eos,EOSIO/eos