Fix 500 error when self-assessment has default dates

Assessment start/due dates will default to the previous/next date if not set.  For this reason, there might be an effective due date, even though the `assessment['start']` or `assessment['due']` are `None`.

Currently, this can cause a 500 error for self-assessment (see, for example, the censorship problem in workbench).

Since we need to figure out the effective start/due dates to determine if an assessment is open/closed, we might as well display those dates to the user.

@stephensanchez