ClusterService scheduled tasks (heartbeater, split-brain handler etc) should run on their own executor. Otherwise when common scheduled executor stalls becuase of other tasks (mapstore etc), cluster tasks are delayed and that causes instabilities.
Test framework should set MemberImpl.lastRead time when a packet is sent.
Fixes #1551.
Merge pull request #1553 from mdogan/fix/3.1/cluster-heartbeater

ClusterService scheduled tasks (heartbeater, split-brain handler etc) should run on their own executor.