When going between python 2 and python 3.5 we can get pickeld course structires that are incompatible no matter what we do do to the bug linked in the comment. In this case, handle the error and delete the corrupt data from the cache. Making this fairly generic because if we have any bad data in cache we don't want it to blow up the whole process. Just delete the bad data and try again.