Class Programmer

An initial stage of the class programmer. Still needs many changes!