This question comes up pretty often and I thought it might be interesting to open up a thread about it.
My main bag is the Domke J803. Inside is a modified 4-compartment insert for a Domke F2 which sits in the middle of the bag leaving 2 large compartments at the outer edges. These larger outer compartments each contain an M8 body, one usually with the 28 Cron mounted and ready, the other usually with the 50 Summilux mounted and ready, or sometimes the 21 depending on the subject/area I'm photographing.
The bag is deep, so the four inner lens compartments will each hold 2 normal M lenses pretty easily. I have used foam padding to separate them top from bottom, but more recently I have taken to gluing Leica M rear lens-caps back-to-back (b2b) and mounting one at each end. This also gives you a third hand when swapping lenses, since you always have a free and supported cap at the ready when you're swapping lenses. My usual pairings in the 4 inner slots are, 1) the 75 Lux with one end free for the 50 Lux (the lens I usually the lens I swap it with); 2) the 21 with one end free for the 28 Cron (the lens I usually swap it with); 3) the 12mm CV b2b with the 35 Cron Cron since these are less-often used lenses; and 4) finally the 90 Cron with an open end for whatever lens I may swap it out with. If need be, I can then mount the 12 on the back of the 75 and the 35 Cron on the back of the 90 and free up a slot for two more lenses if I really need them for a shoot. The ample pockets carry lenscloths, pen, pad, 4 spare batteries, 8 spare SD cards, filters and flash.
My second bag is the regular Domke F803. This bag is just enough smaller than the J803 that it is perfect for a one-body, 4-lens travel kit with room left over in the main compartment for a second body or water bottle and snack. The pockets hold similar to above.
That's my current solution...
Here's a link to a larger image of it loaded:
Here is the b2b cap: