Paginate to get all of the PR comments

PR comments are returned 30 at a time. If a PR has a lot of comments then we
will generate duplicate comments, because we're not looking at all the comments.
This fix will fetch all the comments for us by paginating until the end.

* refactor the pagination to apply for user repos, org repos and comments
`yield` seems more efficient, so I think it's okay to use in this case.