Web-based intelligent tutoring systems are becoming incresingly sophisticated. One approach to the resulting complexity is to separate the application into a front-end applet providing the user interface and a back-end server managing the tutorial material. This makes it easier to integrate more complex questions and simple short answer questions in a single script. However, it is difficult to produce a tutorial client that can use a simple HTML page and also support rich interaction and "supervised" problem solving with a server-side tutor. We describe a system we have built which has these properties, and discurss our experiences using web standard methods to implement it. We also describe various places where we have needed to deviate from established web standards out of technical necessity, and evaluate the system's usefulness as a tutor. This paper describes joint work with Hal Ableson and Gerald Sussman from the Massachusetts Institute of Technology.