docs: def _new_song(self):
          '''
          Used internally to get a metasong index.
          '''
          # We'll need this later
          s = self.song
          
          if self.shuffle:
              # If shuffle is on, we need to (1) get a random song that 
              # (2) accounts for weighting. This line does both.
              self.song = self.shuffles[random.randrange(len(self.shuffles))]
          else:
              # Nice and easy, just get the next song...
              self.song += 1
              # But wait! need to make sure it exists!
              if self.song >= len(self.loop):
                  # It doesn't, so start over at the beginning.
                  self.song = 0
          # Set flag if we have the same song as we had before.
          self.dif_song = s != self.song
          # Reset the position within the metasong
          self.pos = 0