cleanup of c_str() etc peek/change code - so now I think reps fully 'immutable' by design (but some subclasses have mutable methods to be used outside StringRep virtual API