I haven’t used buses myself, but did you know that buses were considerably enhanced early in 5.99 development? It’s not well documented yet, but you can find something in Post-v5 new features and development news
-Look interesting I will check this.
It’s unclear how much you know about KiCad’s capabilities. It’s possible to create atomic parts which have all fields prepopulated. In KiCad you do it by copying a symbol into your own library (or creating a new one). Add the fields and their contents and save the symbol. They just aren’t dynamically populated from a database (if that’s what you mean).
-Yes I know of this. This was the old method in Altium and it still works in both packages. With that method you need one symbol copy of every resistor and capacitor value for example. Not very practical.
solder mask
This you can already do. Remove the Mask layer from the copper pad and create a new Aperture pad with the Mask layer.
-Exactly, this is what I had to do when I imported my QFNs to KiCad. And it works, the generated gerbers are the same. The process is time consuming and complicated though.