I agree with Moult's proposal (in fact we discussed it already on IRC
The placement system is always confusing. Each object has its own placement, and when you have one object based on another, the placements add up. This is inherently complex, and there is hardly an easy way out of it. And you can see that the IFC format, which also makes all this stacked placements available to the user, has the same difficulties as we have in making all this swallowable...
But it is also extremely powerful. We could do like revit, and have a wall object that doesn't have any underlying object (in fact you can, just do Arch.makeWall() and adjust the parameters), we would loose quite a lot of power and flexibility. In FreeCAD, you can make just about any kind of wall imaginable by just defining its "path". In revit not.
But I think we're on the right path here, this functionality needs to stay, but we can find ways to make it more intuitive. This is all UX work.
A thing one has to bear in mind here (same with the Move with Host property), is that if another bim object is based on the same base object, that other object will get moved as well if the base is moved. It might be good to issue some warnings here or there.
Also, note that the default Move With Host state (True or False) is user-settable in Preferences->Arch. The same should be done for Move Base maybe.