Epic Boards v4 REST API Support
<!-- The first section "Release notes" is required if you want to have your release post blog MR auto generated. Currently in BETA, details on the **release post item generator** can be found in the handbook: https://about.gitlab.com/handbook/marketing/blog/release-posts/#release-post-item-generator and this video: https://www.youtube.com/watch?v=rfn9ebgTwKg. The next four sections: "Problem to solve", "Intended users", "User experience goal", and "Proposal", are strongly recommended in your first draft, while the rest of the sections can be filled out during the problem validation or breakdown phase. However, keep in mind that providing complete and relevant information early helps our product team validate the problem and start working on a solution. -->
### Release notes
<!-- What is the problem and solution you're proposing? This content sets the overall vision for the feature and serves as the release notes that will populate in various places, including the [release post blog](https://about.gitlab.com/releases/categories/releases/) and [Gitlab project releases](https://gitlab.com/gitlab-org/gitlab/-/releases). " -->
### Problem to solve
We have support for Epic Boards in GraphQL but not in REST. Some customers need REST for integrations with third parties, like Screenful. See the linked issue for more details.
### Proposal
To support Epic boards in the Screenful integration, the GitLab API should allow:
1. Get the Epic boards for a group or project
1. Get the lists (workflow labels) for the Epic board
1. Get the Epics on the board
1. Get the history of list (workflow label) changes **and** changes in state (open, closed) for the Epics on the board
API should match issue boards: https://docs.gitlab.com/ee/api/group_boards.html
epic