Multicast and IGMP Snooping

I'm currently configuring IGMP snooping on my managed switches and I'm getting confused. So first, let me validate my understanding.

There are 3 roles in IGMP snooping, 'multicast router', 'multicast switch' and 'multicast client'.
In a complete setup, when all roles are present, the 'multicast router' handles sending IGMP broadcast queries to clients, the IGMP snooping enabled switch intercepts these, and the responses, in order to maintain it's own multicast table.
If there is no 'multicast router' available then one of the switches needs to be nominated as a 'multicast querier' and takes on the role of sending out the IGMP queries instead of the router.

Have I got that right?

If so, great! Now how do I setup OpenWRT to act as the 'multicast router' for a given interface?