We need a proxy object because implementing the CuiCall interface in the CallsCall base class has it's own set of problems (f.e. the "state" property would have a type collision CallsCallState vs CuiCallState).