The teacher would give a bit of a spiel to intro the problems, but the problems themselves were very self-directed, things like "measure these triangles, square these numbers, do you notice anything?" then introing the pythagorean theorem.
The teacher would float around and basically help groups that were more stuck on things than others. But students would help each other a lot, meaning the teacher is not spending their time on people who can ultimately help themselves.
This is not a format that works for all students and all class types, but when it works it works so well, and it's extremely scalable.