Refactored contexts for Paxos state machines to make it easier to test states.
Merge remote-tracking branch 'origin/1.9-maint' into 1.9-maint

Conflicts:
	enterprise/cluster/src/main/java/org/neo4j/cluster/protocol/cluster/ClusterContext.java
Merge remote-tracking branch 'origin/1.9-maint' into 1.9-maint