Fix issues with pagination request object generation to permit recursive traversal of entire collection

There was an issue, described in the below commit messages and represented in new unit tests, where you could not fetch an entire collection by recursively calling `_paging.next.then(/*...*/)` from the first page's response collection. This PR resolves that, by improving the way in which the endpoint and link headers get merged to create those next/previous collection page request objects.