STASHDEV-7788 Monitor a few extra statistics in the `HealthMonitor` logging

Monitor a few extra statistics in the `HealthMonitor` logging:

 * `lock.count` which is the number of in-flight lock operations
 * `executor.q.response.stats` consisting of:
    - number of responses processed since last log
    - cumulative deserialisation time (nanosec resolution) since last log
    - the single worst packet in terms of deserialisation time since last log

The intention is to find out why the `responseThread` is getting stuck.
Deserialisation should be super quick, right?
Why don't we change the suffix to "ns" and log the nanos? Given the time range we _expect_ to see the nanoseconds seems like a more useful value, and it's faster to log anyway