Course keys use key introspection

@brianhw, @watsonemily, @srpearce, and @stroilova, please review.
Question: is there an impact on CommentThread.commentable_id for
discussion threads?
@brianhw or @stroilova , I changed this "part" value from course_num to course. Is "course" valid to describe this piece of the module ID value? was this ever a course number rather than a user-specified string?