Let me know if you have any other questions about what various files do.
You'll note the coding style is very different in different files. It changed a lot over the course of the few years I was working on it. Some of the older stuff uses HRESULTs for error handling, but most of the code is modern exception-based c++. I also went on a bit of a jihad for a while removing Microsoft-specific stuff (like CString) and converting to the STL wherever possible.