* INCR-213 run modernizer on djangoapps migrations & management
* fix python 2 to 3 pylint redefined built in `reduce` warning
* regroup imports
* group the `__future__` imports in programs migration files
LEARNER-7086. Uses a new model manager for GeneratedCertificate that excludes
certificates whose course_id does not correspond to a valid CourseOverview
This commit contains back end changes necessary to load programs from the catalog in all contexts. The existing program munging utility is applied as late as possible to avoid conflating this work with changes to the front end; those will be made separately.
ECOM-4422
This command is used to backfill missing program certificates. Formerly, it used the programs service. It now uses the catalog service exclusively.
ECOM-4422
This command was updated to request programs from the catalog, but it wasn't changed to deal with the new response structure. I'm updating all code in the LMS to deal with catalog service responses separately.
ECOM-6900.
Filter certificates by passing status when looking for users who may be eligible for a program certificate. Doing so dramatically accelerates the query and further reduces the set of targeted users. Part of ECOM-3924.