purely functional scala github api client