docs: async def get_artifacts(self, agent=None):
          '''Return artifacts published to the environment.
  
          :param agent:
              If not ``None``, then returns only artifacts created by the agent.
  
          :returns: All artifacts published (by the agent).
          :rtype: list
  
          If environment has a :attr:`manager` agent, e.g. it is a slave
          environment in a :class:`~creamas.mp.MultiEnvironment`, then the
          manager's :meth:`~creamas.mp.EnvManager.get_artifacts` is called.
          '''
          # TODO: Figure better way for this
          if hasattr(self, 'manager') and self.manager is not None:
              artifacts = await self.manager.get_artifacts()
          else:
              artifacts = self.artifacts
          if agent is not None:
              artifacts = [a for a in artifacts if agent.name == a.creator]
          return artifacts