This also:
- extracts pytest fixtures needed to cover the GitHubSession code.
- avoid mutating the inputted credentials passed in constructors
- rework test docstrings to "it should" format for more concise description
Related to T4232
TODO in other diffs: