Add a QueryRecorder for Gitaly calls
<!--IssueSummary start-->
<details>
<summary>
Everyone can contribute. [Help move this issue forward](https://handbook.gitlab.com/handbook/marketing/developer-relations/contributor-success/community-contributors-workflows/#contributor-links) while earning points, leveling up and collecting rewards.
</summary>
- [Close this issue](https://contributors.gitlab.com/manage-issue?action=close&projectId=278964&issueIid=28250)
</details>
<!--IssueSummary end-->
Right now, we're only counting the number of Gitaly calls in the request store to raise errors if a request exceeds a certain limit.
We can leverage that in specs already, but it's quite cumbersome.
We should add a `GitalyCallRecorder` with a set of matchers that keeps track of Gitaly calls in specs so we can count calls and compare calls so we can avoid N+1s in unit tests.
issue