Refactor Reviewers & Assignees Vue Components
<!--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=250257)
</details>
<!--IssueSummary end-->
The `reviewers` code implementation is based on `assignees`. So make sure to apply these improvements on **BOTH** `reviewers` and `assignees` for consistency 👍
## Changes
The following discussion from !40926 should be addressed:
- [ ] @iamphill started a [discussion](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/40926#note_412781514):
> Does `gl-button` work here? :thinking:
---
The following discussion from !40926 should be addressed:
- [ ] @iamphill started a [discussion](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/40926#note_412781538):
> Does this need to be a computed prop? No value inside changes so it could either be on `$options` or inside the template right?
---
The following discussion from !40926 should be addressed:
- [ ] @iamphill started a [discussion](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/40926#note_412781548):
> I know this is copying what exists for assignees - but would it be possible to see if `GlIcon` could work instead?
---
The following discussion from !40926 should be addressed:
- [ ] @iamphill started a [discussion](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/40926#note_412781559):
> Can this `v-if` be place on the `<span>` on the line below? :shrug:
---
The following discussion from !40926 should be addressed:
- [ ] @iamphill started a [discussion](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/40926#note_412781570):
> Worth moving this to below the `if`? :shrug:
>
> Also where does apollo get used in the reviewers? :thinking:
issue