Don't duplicate comments after force push

* Remove `Comment` model
* Update `Commenter` and `CommentingPolicy`:
  - Check for previous comments on pull request
  - If a comment reporting a violation for a given line has already been
    made, do not add a comment reporting the same violation
* Add `GithubApi#pull_request_comments` and `PullRequest#comments`
  methods for fetching and accessing pull request comments
* https://trello.com/c/ha2hgFj2/283-avoid-commenting-a-second-time-after-a-force-push
We're not reusing this temp var anywhere. If we inline it into `PullRequest.new(payload, 'some_token')` we'll save a like :smiley: