Fix performance regression

Remove course_from_id
don't fetch whole course when the root will do
don't fetch even the root if the id will do

@chrisndodge @dianakhuang @sarina @nasthagiri some subset of you, please review

@flowerhack a comment should be added in the exception clause to explain this