A Software Architecture That Promotes Pedagogical Ownership In Intelligent Tutoring Systems