def __init__(self, ctxt, name, config, step_addr):
<EOL>self.validate_conf(name, config, step_addr)<EOL>self.name = name<EOL>self.config = config<EOL>self.step_addr = step_addr<EOL>
Initialize the action or modifier.  This should process and store
the configuration provided.

:param ctxt: The context object.
:param name: The name.
:param config: The configuration.  This may be a scalar value
               (e.g., "run: command"), a list, or a
               dictionary.  If the configuration provided is
               invalid, a ``ConfigError`` should be raised.
:param step_addr: The address of the step in the test
                  configuration.  Should be passed to the
                  ``ConfigError``.