Temporizador global em Javascript com vários retornos de chamada

Desejo criar um objeto de timer global em javascript e poder adicionar retornos de chamada rapidamente. Dessa forma, posso usar apenas um cronômetro global no meu script para executar todas as ações em um determinado intervalo, em vez de desperdiçar recursos usando múltiplos.

É assim que eu quero ser capaz de juntar as coisas:

var timer = new function() { 
 clearInterval( this.interval );

 //[1] At this point I want the Callbacks to be run

 var self = this;
 setTimeout(function() {self.timer()}, 200);
}

function otherObject = new function() {
    //When created I want to bind my object's function called cb to the global timer at [1]
}

otherObject.prototype.cb = function() {
    //Stuff that should be done every time the timer is run
}

var someObject = new otherObject();

Como tornaria possível vincular qualquer função numérica (a maioria das quais são funções em outros objetos) para executar no intervalo do meu timer em tempo real?

questionAnswers(3)

yourAnswerToTheQuestion