add membership health check

checking if the membership map is healthy based on a last ping
threshold

I think this needs a little refinement, specifically with the algorithm and the functional work on the `lastPingThreshold`.
Don't need `=` for no-return-value function. We've tried to be (fairly) consistent with that type of definition for side-effectful return-free functions.