refactor: FeedForwardTeacher, Teacher - make Teacher generic