Maybe the end representation is quite basic but I still think it’s a feat of programming to take a bunch of constraints and turn it into a representation that dynamically satisfies those constraints.
I think the criticism is more that the examples only show a very simple case. What you described is indeed very cool, if only rich examples showed it off better.
Figures 1, 7, 17, 18, 19, 22, 24, and 29 from the web page are not sets as circles. The paper contains additional counterexamples.