I think the most efficient approach here is a "low tech" one:
- Let the reviewers create GitHub issues as they look at the current state of the code.
- Let them create their own GitHub pull requests to suggest changes to the code, to the comments or to the documentation.
- You can have comments on individual commits in GitHub as well.
- Finally, just talk about the code on Slack, and fix code/comments as you spot the issues!
At the end of the day the review is just people working together on improving the code and comments. Besides, it is pretty typical for someone to do an initial "big bang" for version 0.1, and then start the official PR-controlled process.
That being said, Git is flexible when it comes to history manipulation. Right now you have something like this:
A > B > C > D <--- [master]
It is relatively easy to convert it to:
A > <--- [master]
B > C > D <--- [featureA]
Just create new branch, move master branch pointer back in history and force push to the repo. This process was explained in details, for example, here:
Move the most recent commit(s) to a new branch with Git
Git branch is just a pointer, so change like that will not affect a single commit, just put [master] and [featureA] pointers to different locations.
After that you can create PR and have all the discussions you want. And move [master] to the tip once it is accepted.
However, such operations can easily destroy things in your entire repository and/or confuse other users if they have already started work on the existing master. I would personally not do something like this just to have a chat with team about the recent changes! If you go for anything like that, make sure you have properly backed up your entire repo somewhere.