def add_iota i
            raise Edoors::Exception.new "Iota #{i.name} already has #{i.parent.name} as parent" if not i.parent.nil? and i.parent!=self
            raise Edoors::Exception.new "Iota #{i.name} already exists in #{path}" if @iotas.has_key? i.name
            i.parent = self if i.parent.nil?
            @iotas[i.name]=i
        end
def add_iota i
            raise Edoors::Exception.new "Iota #{i.name} already has #{i.parent.name} as parent" if not i.parent.nil? and i.parent!=self
            raise Edoors::Exception.new "Iota #{i.name} already exists in #{path}" if @iotas.has_key? i.name
            i.parent = self if i.parent.nil?
            @iotas[i.name]=i
        end
adds the given Iota to this Room

 @param [Iota] i the Iota to add

 @raise Edoors::Exception if i already has a parent or if a Iota with the same name already exists