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
@gylaz can you tell me more? The context `'when violation has not previously been reported'` is reflected in the assignment of `previous_comments_for_line` on line 33 to `[]`.