This is a subtask of WFCORE-338 and should not be done independent of that overall work.
The election algorithm we are planning for WFCORE-338 depends on tracking the revision number for changes to the persistent domain-wide model (i.e. what gets written to domain.xml). The revision number will be a simple counter, but we will also track a revision timestamp. The timestamp is solely meant to be an aid to users in understanding when a revision occurred and is not itself relevant to the election algorithm
Task here is to
1) Read the revision # and timestamp from domain.xml when it is parsed
2) Increment it locally on any HC when an operation updates the domain-wide persistent config.
3) Persist the local values in domain.xml whenever an operation updates the domain-wide persistent config.
4) For the master HC, propagate its current revision # and timestamp along with any multistep write operations pushed to slave HCs.
5) For the master HC, propagate its current revision # and timestamp along with the resource model data provided to newly connected HCs.
6) For slave HCs, use the revision # and timestamp provided by the master via 4) and 5) as the base value before incrementing in 2).