Designate this a multi-feature representative and add a co-feature.

        Some features exist discontinuously on the sequence, and therefore
        cannot be declared with a single GFF3 entry (which can encode only a
        single interval). The canonical encoding for these types of features is
        called a multi-feature, in which a single feature is declared on
        multiple lines with multiple entries all sharing the same feature type
        and ID attribute. This is commonly done with coding sequence (CDS)
        features.

        In this package, each multi-feature has a single "representative"
        feature object, and all other objects/entries associated with that
        multi-feature are attached to it as "siblings".

        Invoking this method will designate the calling feature as the
        multi-feature representative and add the argument as a sibling.

def add_sibling(self, sibling):
        """
        Designate this a multi-feature representative and add a co-feature.

        Some features exist discontinuously on the sequence, and therefore
        cannot be declared with a single GFF3 entry (which can encode only a
        single interval). The canonical encoding for these types of features is
        called a multi-feature, in which a single feature is declared on
        multiple lines with multiple entries all sharing the same feature type
        and ID attribute. This is commonly done with coding sequence (CDS)
        features.

        In this package, each multi-feature has a single "representative"
        feature object, and all other objects/entries associated with that
        multi-feature are attached to it as "siblings".

        Invoking this method will designate the calling feature as the
        multi-feature representative and add the argument as a sibling.
        """
        assert self.is_pseudo is False
        if self.siblings is None:
            self.siblings = list()
            self.multi_rep = self
        sibling.multi_rep = self
        self.siblings.append(sibling)