Parses rel="last" from the Link header, and for the cursor-paginated
issues listing falls back to open_issues_count from the prior GetRepo
response. Logs read "page 3/7 fetched count=100 accumulated=300" when a
total is known and remain "page 3 ..." otherwise.
Single chokepoint Client.do now inspects the response on 403/429 and,
when the headers say we're rate-limited (X-RateLimit-Remaining=0 or a
Retry-After value), sleeps until the reset and retries once. The sleep
honors ctx cancellation, so callers bound the wait with
context.WithTimeout if they want a deadline.
RequestError gains a Headers field so the retry decision can read the
underlying response without re-fetching.