A three-layered scalable architecture for Computer Based Instruction