add setStudentAnswer method to parts

studentAnswer (or its equivalent for MCQ parts) is set before deciding whether or not to mark a part.
This only makes a difference for parts with zero marks. Even these parts now get studentAnswer set, so you can refer to it in feedback.