raise informative exception rather than use assert
improve proctor submission history UI
preserve 'extended_due' state when resetting