The FSM class encapsulates all of the initialisation of the window and the render device by making external calls. It also contains a render function where the scene is rendered. Although the render function can be used for rendering, it is strongly advised that the rendering should be abstracted away into another class. It is a good idea to keep the FSM as clean as possible.
Visual Studio .NET 2003 to open the solution.