I think the question here is: do you have a model of this that you just want to visualize, or do you want to build interactive application where you can rename things, drag them around, add them, delete them, and such?If the former, then it's just a bunch of rectangles, labels, and a cell layout, so it's quite simple.
If the latter, then it would require quite a lot of work... but it gives me an idea... I'm working on a modeling platform and I think it would be possible to implement it there... I'll have to think about it.
Exporting the visualisation for web or as svg is also important for me.
Peter