Refactor courseService to listen for asynchronous course changes