added ci as class property
add 4th worker and fix fetching logic
add error handling to CachedAPI
use CachedAPI for course info
fix fail_mail type issues