They also have good aerodynamic properties at hypersonic speeds.
http://en.wikipedia.org/wiki/Grid_fin for more info
* Grid fins require less structure to support / actuate them per unit control force
* Grid fins are more easily stowed (unneeded during launch, would cause significant drag forces if not stowed)
As the rocket travels through the air each one can be rotated on its axis perpendicular to the body of the rocket. If all are rotated the same way they would impart a spin, if two were rotated one way and other two rotated the opposite direction they would simply slow the rocket down. If two adjacent ones are counter rotated the provide drag on one side (imparting a pitch change).
I was thoroughly impressed when I saw the video, that is a really cool technique.
They're originally a "Russian thing", for a decade or so it seemed like every missile they designed had grid fins.
They're an example of high optimization. Around certain speeds they work REALLY well and weigh practically nothing and the control forces are very low. On the other hand they're little more than speedbrakes around other airspeeds.