Not boring at all, I’m still asking myself the same kind of questions 
I can tell you that, yes, trees and other “decorations” need to be somehow linked to the terrain. Or better they need to be linked to the same quad tree “leaf” as the terrain they’re standing on (although you could of course have different quad trees for your terrain and your decorations, but it’s the idea that counts).
With respect to the buildings and their bsp trees… I’m not so sure, but I guess those buildings will be linked to the quad tree in a similar manner as the trees but instead of just renderinig a model of a tree an entirely different renderer takes over the rendering of the building.
I’m pretty sure it’s the responsibility of the quad tree renderer to determine if a tree or a building is behind a hill.
This probably won’t get you one step closer to writing the actual code, but discussiong it like this might at least give us some ideas 