Binds typevar to the type its_type.
        Binding occurs on the instance if the typevar is a TypeVar of the
        generic type of the instance, on call level otherwise.

def bind(self, typevar, its_type):
        """
        Binds typevar to the type its_type.
        Binding occurs on the instance if the typevar is a TypeVar of the
        generic type of the instance, on call level otherwise.
        """
        assert type(typevar) == tg.TypeVar
        if self.is_generic_in(typevar):
            self.bind_to_instance(typevar, its_type)
        else:
            self._ns[typevar] = its_type