Discussions Vue refactor for Commits and Snippets page
<!--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=25236)
</details>
<!--IssueSummary end-->
Commits and Snippets discussions are still using legacy `notes.js` and bunch of Haml templates. We should refactor those pages to use our Vue discussion components.
Some of the benefits that I can think of,
- We will have a unified design in discussion across GitLab
- We will delete long-standing legacy `notes.js` and a lot of Haml templates
- We will only one code path for discussions
We should also rewrite Commit diff with Vue since we already have diff file components ready. We have another issue for this https://gitlab.com/gitlab-org/gitlab-ce/issues/49620
issue