A Curriculum and Software Design Scaffolding Goal Directed Teaching in Classrooms