avoid extra channel hop for hot-path  mutation handling
if lost connection, kick off cluster refresh
renamed to TotUPRStreamReqResWantAfterRollback
more stats around cluster refresh
added TotWorkerBodyKick stat
don't use label/break
added TotKick/TotKickOk stat
smaller lock coverage area
made locking more explicit
can't kick refreshClusterCh while holding a lock

For some reason, it looks like the go scheduler doesn't give schedule
back the kicking goroutine so that it can Unlock().  That means the
refreshCluster goroutine will wake up and try to Lock().  And, then
deadlock and no cluster refreshes after this point.