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
Actually, never mind `pull_request` is used later in the method.

I think if you extract `previous_line_comments` as a method, then you could call it like `previous_line_comments(pull_request.comments, file_violation.filename, line_violation.line_number)`, or something.