Merge pull request #9 from cubejs/cluster3

rebase
updates after nodesummit, added uvmon to heartbeat, using process.cluster2 to make sure single cluster emitter/status/cache usage across the whole process, added successorGuard etc.
Merge branch 'cluster3' of https://github.com/inexplicable/cubejs-cluster2 into cluster3
fix multiple instances in a single process
Merge pull request #69 from inexplicable/cluster3

Cluster3
Merge pull request #15 from cubejs/cluster3

Cluster3
~ avoid duplicate #whenStop calls
~ separate spontaneous 'disconnect' & preemptive 'dismiss' (it caused master to receive 'cluster' native 'disconnect' event)
~ worker#beforeStop to stop server not app
~ 'close' is triggered by worker#disconnect from cluster, no need to double the effort
Merge pull request #16 from inexplicable/cluster3

Cluster3
Merge pull request #17 from zhuchenwang/cubejs-cluster3

Cubejs cluster3