Initial version ported from pySimpleDMX.