'Register a lazy command handler
@param supported_commands {iterable} The commands to handle; each
element should be a str of the command name.
@param constructor {callable} Function to be called to get the real
command handler; it should take no arguments and return a command
handler instance.  It may return None if the command is not
available; it will not be asked again.'

@classmethod
def registerLazyCommandHandler(cls, supported_commands, constructor):

    for command in supported_commands:
        cls._command_handler_map[command].append((constructor,))
