encapsulate kmodels and kviewmodels
encapsulate kcommunicators and kcontrollers
derive kokicontroller from kcontroller