code: func (p Bits) GroupByShard() map[uint64][]pilosa.Bit {
  	m := make(map[uint64][]pilosa.Bit)
  	for _, bit := range p {
  		shard := bit.ColumnID / pilosa.ShardWidth
  		m[shard] = append(m[shard], bit)
  	}
  
  	for shard, bits := range m {
  		sort.Sort(Bits(bits))
  		m[shard] = bits
  	}
  
  	return m
  }
docs: // GroupByShard returns a map of bits by shard.