Add broadcast feature.
Use template pattern instead of metaclass.
Add tox file.