Learner-aware Teaching: Inverse Reinforcement Learning with Preferences and Constraints