Hint factory student model

Basic hint factory student model.  Just adds hints and states the student has visited, optional if a student_id is passed to get_hint