TrackStateProvider - Improve cache key hash and add mutex locks
See discussion in !2106 (merged)
This MR ports to master two of the fixes from there
- Improved hashing of the track key in the hash, to include LHCbIDs and Track Fit pointer
- Use mutex locks for (brute force) thread safety with the track cache.
A potentially better solution is being discussed in !2106 (merged), but the changes here are required now in master to address a number of issues seen in master, after the additional of some new tests in Moore. see
- Address sanitiser error relating to the state cache #148 (closed)
- Non-reproducible diffs see in some tests in Moore!533 (merged)