Add Hound to repo team with admin access

* We discovered that `Octokit::Client#repo_teams` may return repo teams
* to which the current Hound user does not belong. When we attempt to
* add Hound to a team to which the current user does not belong,
* `Octokit::Client#add_team_member` returns false and
* `ActivationsController#create` returns a 502 status. This is causing
* some users to experience a "Repo failed to activate" error.
* In this commit:
  - Change logic in `GithubApi#add_user_to_org` so Hound is added to the
    first existing repo team with admin access to which the current
user belongs
  - Extract GithubUser class
  - Add user_teams.json fixture
  - Update existing tests and add feature spec
* https://trello.com/c/CX9NavUF
Fix typo in spec
Merge pull request #206 from chiastolite/patch-1

Fix typo in spec
move github_user require into spec
Remove duplicates
Merge pull request #212 from bry4n/patch-1

Remove duplicate method
Do not retry after octokit 404
Add Hound user to existing Services team

https://trello.com/c/4GfbD6J6/219-repo-fails-to-activate-when-services-team-already-exists
Refactor StyleChecker to add StyleGuide

Split out functionality of `StyleChecker`, and wrap RuboCop specifics into
`StyleGuide`. This simplifies `StyleChecker` and allows for easier testing of
default style guide rules.
Move StyleGuide to app/models
Add default style guide test coverage