Fix ServiceFailureDetector

- restore logic to remember last published event, so can take that
  into account for stabilisation delays
- fix races/timing in tests
This closes #257