pull github requester into its own module.
commit application & diffs is the responsibility of repositories

Also, diffs and commit applications are also separate concerns.