def computePeersHavingPiece(classifiedPeers)
      # Make a list of each peer having the specified piece
      peersHavingPiece = Array.new(@numPieces)
      # This first list represents rarity by number if peers having that piece. 1 = rarest.
      classifiedPeers.requestablePeers.each do |peer|
        @numPieces.times do |i|
          if peer.bitfield.set?(i)
            if peersHavingPiece[i]
              peersHavingPiece[i].push peer
            else
              peersHavingPiece[i] = [peer]
            end
          end
        end
      end
      peersHavingPiece
    end
def computePeersHavingPiece(classifiedPeers)
      # Make a list of each peer having the specified piece
      peersHavingPiece = Array.new(@numPieces)
      # This first list represents rarity by number if peers having that piece. 1 = rarest.
      classifiedPeers.requestablePeers.each do |peer|
        @numPieces.times do |i|
          if peer.bitfield.set?(i)
            if peersHavingPiece[i]
              peersHavingPiece[i].push peer
            else
              peersHavingPiece[i] = [peer]
            end
          end
        end
      end
      peersHavingPiece
    end
Return an array indexed by piece index where each element
 is a list of peers with that piece.