I usually use the "Peers way", however, I can't get intellisketch to work properly. As an example: I can add a line and then constraint it with relationships to some vertex in the assembly, but those vertices won't be available while drawing it. This makes the whole process a bit slower.
As a personal experience, I try to avoid having features on parts linked to geometry on the assembly, since a number of times, changes in the assembly don't flow to the part so easily, and the whole design not always gets correctly updated. You have to open/close/update/activate etc etc... in the assembly in order to (being lucky) get a full update in the parts. When the lack of a proper update is not easily noticeable (let's say some holes moving 1-2 mm from their theoretical position) you can get into serious problems.
Some other times, the part "loses" those references from the assembly by no logic reason and you have to re-link the geometry
When two or more parts are very related in their geometry, I prefer to use Part Copy with the Construction Body option, thus placing a reference copy of one part inside another. With this way, you don't need a "parent" assembly in order to get the information flowing from the parts. Also, you can import curves and surfaces.
From my experience: In my work, we make complex welded assemblies with curved sheets and any kind of components. I usually select a main part, in which I place the general dimensions which will drive the whole assembly, by means of curves and surfaces (placing notes and so, in order to build a very logical and intuitive model), along with the geometry of that first part. Next, each component will have this part copied inside it as a reference, most of the time copying just the needed geometry/surfaces/curves each part demands, and modeling it just with that info and the lesser new dimensions possible. With this way you can use "Match coordinate systems" in order to build the assembly once the parts are finished, so less work here too. Most of the time, just editing the first part you can get the whole assembly follow the update with REALLY no issues. I'm talking of assemblies which easily surpass 50-100 parts, so you can be sure the result is simply impressive. I tried the same in the past but linking those parts through the assembly and the result was not good, specially when you don't know why a reference has been lost when nothing has changed.
From my experience too, I try to avoid assembly features whenever they are not indispensable. The fact is that I always get all sort of problems and issues when there are sketches which rely upon assembly information, and you have to re-link and re-do, and re-associate whenever measures change in the assembly (just measures, not other changes which could explain those issues), most of the time with no feedback of what has happened.
My apologies for this long post, hope it helps someone.