A signal board contains at most N signals. Where a signal is just composed of an id and name. A signal's name should be delimited by dots, e.g. "movement.arrived". Signals are structured into a trie ...
Support Python >= 3.7 and PyPy. Python 2, Python < 3.7, and Jython may continue to work, but the next release will make incompatible changes.