Tom, interesting questions.
I think the package_id to define where an object belongs almost works.
I like the content repository model of parent_id better.
This builds an explicit object hierarchy that is often, but not always reflected in acs_objects.context_id.
I would love to explore the possibilites of setting up an object hierarchy for all objects similar to the cr_item.item_id, cr_item.parent_id model. Unfortunately it seems like a huge amount of work and package_id would help with some queries where we want to know which package created an object.
I think in the long run, storing items in a folder tied to a site-node ends up being very useful for partitioning objects.
I guess this is all something to think about for the future, but doesn't decide this TIP.