Storage across contracts

And the storage in the library is still referring to where this library is embeded in, correct?

This was just a flash of thought in my mind. Is it possible to add this as a new functionality? Here is the use case. For an external storage pattern, to update a struct in the storage contract, as illustrated above, one has to retrieve a copy of it in this contract, and store it in memory as a new struct instance, and get it updated and send it back to the storage contract and call setter in the storage contract.

If a storage pointer can be accessed by another contract, the above process can be reduced to just two steps: read and modify.