Check out what the OpenChat team has so graciously shared on how they manage upgrading child canisters. Might be useful.
I’m also going to need a solution to store a potentially unbounded number of photos on the IC quite soon. (Would prefer to go 100% IC instead of depending on IPFS.)