"... now correctly return new objects." isn't right. They always returned new objects. It's just that now they return a coordinate which references a *copy* of the source coordinate's coordinate system.