What is the best way to manage a complex assembly with complex parts?

I am continually running into this problem.  I design complex parts and assemblies.  These parts are linked together using the edges, surfaces, and such.  It is really beneficial to have the parts linked, but only to a certain extent.  The parts include all sorts of features: complex surfacing, lofts, extrude to offset surface(from another referenced part), etc.  All it takes is to move one of the parts in the assembly and everything goes crazy.  The models I am having this trouble with are typically for injection molded parts.  These parts have mating parts upon mating parts and the feature tree for each are almost endless!

What would be the best approach to this type of modeling?  Once I get to the final part or at least close would it be best to save it out as a parasolid and reinsert it in the assembly as a part?  I don't even want to mention when someone else needs to make a change!  Any advice would be appreciated.

SolidworksPlastics And Mold Design