because SystemProcess only provides the PID function, it is a wasteful middleclass. instead, ClientProcess and other classes that implement the Process interface will each provide PID(). in addition, the logwriter type is now boolean. there is no need to use a struct pointer.