Maybe we need to add an abstraction layer (an interface and a class implementing it) over GitHub client to reply on abstraction here. This way during testing we'll be mocking only the interface (the methods we expect GitHub client need to have) instead of full `Client` implementation as right now. By defining an interface we will explicitly tell on which GitHub client methods we're relying as well. And we can seamlessly switch to another GitHub client later too.