code: def _add(self, sprite, index = None):
          
          if sprite == self:
              raise Exception("trying to add sprite to itself")
  
          if sprite.parent:
              sprite.x, sprite.y = self.from_scene_coords(*sprite.to_scene_coords())
              sprite.parent.remove_child(sprite)
  
          if index is not None:
              self.sprites.insert(index, sprite)
          else:
              self.sprites.append(sprite)
          sprite.parent = self
docs: add one sprite at a time. used by add_child. split them up so that
          it would be possible specify the index externally