private void ProcessMatch(Match match)
        {
            // Get average ratings
            var avgWinnerRating = match.Winners.Average(p => p.Rating);
            var avgLoserRating  = match.Losers.Average(p => p.Rating);

            // Calculate rating delta based on result
            var ratingDelta = _ratingService.CalculateDelta(avgWinnerRating, avgLoserRating);

            match.RatingDelta = ratingDelta;

            // Update player stats
            foreach (var player in match.Winners)
            {
                player.Wins++;
                player.Rating += ratingDelta;
            }
            foreach (var player in match.Losers)
            {
                player.Losses++;
                player.Rating -= ratingDelta;
            }

            // Save
            _db.GetCollection <Player>().Update(match.Winners);
            _db.GetCollection <Player>().Update(match.Losers);
        }