Updated students/models with extra functionality.
Refactored the generate_certificates script.
Moved some responsibilities to helper classes.