I want to set up a crowd scene using instanced models with a lot of randomization. Say I have a library that consists of several bodies, hairstyles, and outfit pieces. I want to make a crowd where each member has their pieces randomly drawn from this library, as well as random colors in their materials, but also drawn from a list or predefined colors. And then have a random pose from a pose library, but still each have their own rig intact so that their individual poses can be changed/tweaked. And i want to do it all without breaking instancing to the original models, so that if any of the assets are updated, all of the members of the crowd using those pieces will get the update.
Is this possible, and what is the best workflow for it?