'Create new StateSpace object and settle inheritance.'

def __new__(cls, *system, **kwargs):

    if ((len(system) == 1) and isinstance(system[0], LinearTimeInvariant)):
        return system[0].to_ss()
    if (cls is StateSpace):
        if (kwargs.get('dt') is None):
            return StateSpaceContinuous.__new__(StateSpaceContinuous, *system, **kwargs)
        else:
            return StateSpaceDiscrete.__new__(StateSpaceDiscrete, *system, **kwargs)
    return super(StateSpace, cls).__new__(cls)
