code: func (b *Board) SquareMap() map[Square]Piece {
  	m := map[Square]Piece{}
  	for sq := 0; sq < numOfSquaresInBoard; sq++ {
  		p := b.Piece(Square(sq))
  		if p != NoPiece {
  			m[Square(sq)] = p
  		}
  	}
  	return m
  }
docs: // SquareMap returns a mapping of squares to pieces.  A square is only added to the map if it is occupied.