Я сделал так, кроме функции func, сохраняю ещё объект к которому она относится self. 
TSwitchDataSource.prototype.addSubscriber = function (self, func) {
        this.subcribers.push({self, func});
    }
...............
SWDataSource.addSubscriber(SwDataClient, SwDataClient.subcribe);//
И вызов теперь выглядит так:
//Рассылка изменений подписчикам
    TSwitchDataSource.prototype.sendStageToSubscribers = function () {
        var i = this.subcribers.length;
        while (i !=0 ){
            i--;
              this.subcribers[i].func.call(this.subcribers[i].self, this.stage);
        }
    }
Выглядит сложно, но работает!!! спасибо.
Как было бы красивее с точки зрения профи JS организовать этот код?