override PhasedUnit.getUnit() to return the right subtype
Fix #497 by keeping a reference to the phasedUnit itself in the CPC