Protected
renameNOTE: this method has to do with graph modification and as of the current set up, we should not allow it to be called on any immutable graphs. As such, we protect it and let the main graph expose it. The other benefit of exposing this in the main graph is that we could do better duplicated path check
TODO: this will be removed once we have full support for section index See https://github.com/finos/legend-studio/issues/1067
CoreModel holds meta models which are constant and basic building block of the graph. Since throughout the lifetime of the application, we rebuild PureModel many times, we cannot have these basic building blocks as part of PureModel as that will throw off referential equality.
Also, since project dependency uses primitive types, it might even cause the dependency model and system model to depend on PureModel which is bad, as it could potentially cause memory leak as we rebuild the graph.