Introduced context class which has the Tip, CurrentBranch and Repo

When I did this to GitHubFlowVersion it seemed like it cleaned things up, I think it makes things a little easier to follow.

Thoughts?