added and using course type class (enum doesn't work for new dynamic course types), added random Num generation