Refactored comments and move collapsed state to thread stores

Extracted shared comment logic into CommentMixin
Extracted DisplayComment and PermalinkedComment as separate components
Comment is now only for threaded comments

Renamed CommentThreadStore's newCommentIds -> isNew
Added CommentThreadStore isCollapsed lookup and toggleCollapse method
onCommentsChanged callback payloads now have type and data props
Remove margin from extra trailing <pre> in comments