[Frontend] Combine more than one type of item into one pagination pattern (for use in Security inventory)
## Problem
**What?:** In the Security inventory, we want to show subgroups and projects combined into one list with subgroups first. But also, we want to use "previous/next" pagination instead of the current "load more" pagination.
For example, if a top-level group has 30 subgroups and 25 projects, the pages should be displayed like this:
| page 1 | page 2 | page 3 |
| ------ | ------ | ------ |
| 20 subgroups <br> 0 projects | 10 subgroups <br> 10 projects | 0 subgroups <br> 15 projects |
| previous page button: disabled <br> next page button: enabled | previous page button: enabled <br> next page button: enabled | previous page button: enabled <br> next page button: disabled |
**Why?** This page is intended to be an overview of the state of security tools across an entire top-level group, so every item must be in the list. Statuses for projects within subgroups are summarized in the subgroup rows, and statuses for projects that are direct descendants of the top-level group are displayed in more detail. But also, we want the number of items displayed at any given time to be limited, which improves performance and sets a better expectation for what the "select all" action does.
### More context (most recent first)
- reverted first frontend attempt: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/224908+
- first frontend attempt: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/189193+
- backend issue: https://gitlab.com/gitlab-org/gitlab/-/work_items/578876+
- MR that added "load more" pagination: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/189193+
- Security inventory epic: https://gitlab.com/groups/gitlab-org/-/work_items/16484+
### Technical requirements
- [x] feature flagged
- [x] thorough test coverage
- [x] lexicon of terms we can use to describe what's going on/wrong
- [x] separate, modular, human-readable, reusable code
- [x] works with existing search/filters
- [x] works with existing bulk selection/editing
## Proposed solution
1. Add a feature flag: `security_inventory_pagination`
2. Use the existing "load more" pattern when the feature flag is disabled
3. Add a `utils.js` file in a `combined_pagination` directory in `~/vue_shared/`
4. Implement a reusable version of this pagination pattern in `combined_pagination/utils.js`
issue