Add artifact to :attr:`A`.

        :raises TypeError:
            If the artifact is not derived from
            :class:`~creamas.core.artifact.Artifact`.

def add_artifact(self, artifact):
        """Add artifact to :attr:`A`.

        :raises TypeError:
            If the artifact is not derived from
            :class:`~creamas.core.artifact.Artifact`.
        """
        if not issubclass(artifact.__class__, Artifact):
            raise TypeError("Artifact to add ({}) is not {}."
                            .format(artifact, Artifact))
        self._A.append(artifact)