generalize render_bad_response
factor out ExerciseBlock