This caching layer was a premature optimization, and cause the interfaces to require mutability in places where it wasn't really warranted, and in the end many callers would end up calling .clone() anyway for various reasons.
Will follow up with other PRs later to further change this.
This caching layer was a premature optimization, and cause the interfaces to require mutability in places where it wasn't really warranted, and in the end many callers would end up calling .clone() anyway for various reasons.
Will follow up with other PRs later to further change this.