jQuery loop infinito através de cada div

Eu tenho alguns divs com divs neles, que eu quero percorrer ao remover uma classe do atual, em seguida, adicionando uma classe para o próximo.

Então, quando eu chegar ao último, eu quero voltar ao começo e fazer tudo de novo.

Eu já tenho uma maneira de fazer isso, mas só funciona para um conjunto de divs, eu vou ter muitos conjuntos de divs que precisam fazer um loop independente.

Aqui está um exemplo de alguns conjuntos (haveria uma quantidade aleatória de divs em cada um):

<div class="set">
    <div class="current">Item1</div>
    <div>Item2</div>
    <div>Item3</div>
</div>


<div class="set">
    <div class="current">Item1</div>
    <div>Item2</div>
    <div>Item3</div>
    <div>Item4</div>
    <div>Item5</div>
</div>

Preciso remover essa classe atual e adicioná-la à próxima div em cada conjunto e assim por diante.

Aqui está o código que eu tenho que funciona com um conjunto:

$(function() {
    var items = $('.set div').length;
        current = 0;

    setInterval(function() {
        $('.set div').eq(current).removeClass('current');

        if (current == items - 1){
            current = 0;
        } else {
            current++;
        }

        $('.set div').eq(current).addClass('current');
    }, 500);
});

questionAnswers(3)

yourAnswerToTheQuestion