Fix bug in spam blocking

Editing a comment such that it matched a blocked hash would cause the
API to return 503 but actually update the comment. This is now fixed.
Fix a bogus test
Add thread type feature

There are two thread types, discussion and question. Discussions have
the same behavior that current threads do. When a question is returned
from the API, it contains separate fields for its endorsed and non-
endorsed entries.

Co-authored-by: Jim Abramson <jsa@edx.org>
Merge pull request #108 from edx/gprice/thread-type

Add thread type feature
Add/update thread filters (flagged, unread, unanswered).
Merge pull request #112 from edx/jsa/thread-filters

Add/update thread filters (flagged, unread, unanswered).
Make Travis use an ES version we support
Merge pull request #115 from edx/gprice/travis-es-version

Make Travis use an ES version we support
Remove unused endpoints
Allow filtering by group_id in more endpoints

All endpoints that return lists of threads (except the endpoint used by
the notifier component) now allow filtering by group_id and are tested
accordingly.
Number of post are incorrect becuase deletion of comments doesn't perform deletion of subcomments one by one which cause magical comment counter not to decrese the counter properly
TNL-91
Merge pull request #113 from mlkwaqas/waqas/tnl91-incorrect-post-number

Number of post are incorrect
Merge pull request #114 from edx/gprice/test-group-id

Allow filtering by group_id in more endpoints
Add validation for undo_vote_for to avoid a crash
Filter commentable queries by course_id

Bug: TNL-207
Merge pull request #117 from edx/gprice/commentable-course-id-filter

Filter commentable queries by course_id
Add group_id to payload from notifications.

TNL-299
Merge pull request #118 from edx/christina/notifications_group_id

Add group_id to payload from notifications.
Add the ability to query multiple group ids
Merge pull request #116 from aboudreault/vote-unvote-crash

Add validation for undo_vote_for to avoid a crash