How do I make a diagram of the following structure where each element is a box with text and possibly sub-elements.
Here is an example of the desired structure. The sizes and alignment of the boxes are arbitrary.

I want the diagram to automatically align the boxes so that there is a bit of space between each.
The order of the boxes does not matter, only which ones are inside which.
Nice to have features:
- Text should be optional if the box contain other boxes
- The background color of each box can be specified.
I'd prefer a TikZ solution, but other ways are good too if they do not depend on external programs and the structure would be easier to keep track of.

