An argument might be made that this would live better in a (templated or not) config file in version control - and then the action become: fill in template, push config, (re)load config.
In this case, for Ansible, you'd probably try to use command (there's also she'll, but simple is better - when possible): http://docs.ansible.com/ansible/command_module.html
http://docs.ansible.com/ansible/firewalld_module.html
Expanding the white-list of ips is a matter of config/templates.
Fwiw, I do think Ansible tend to get a bit complicated because plugins tend to get a bit opaque and complicated. On the other hand, some simple special variables like "all_other_servers" to avoid manually filtering out "self" procedurally all the time is probably a good idea.
I'm not sure if I'll be able to spare the time - but I'll at least watch the github repository - perhaps I can try and help flesh out some alternative examples if you file an issue?
[ed: perhaps such things should go here?