e) There's nothing I can see in Collection for retrieving components by their properties e.g. by ID. Say I know the ID string but don't have the component instance. I'm left having to perform a linear scan on the collection's entries. Perhaps collections should provide some API to search for things they may contain? I'd suspect that general querying is something we do not want to model or mandate, but retrieving things by (unique?) IDs seems like a slam-dunk.