BaseClass = function() {
  var myself = this;
  
  var initFunctions       = [];
  var superInitFunctions  = [];
  var initComplete        = false;

  this.addInitFunction = function(func) {
    if (func) initFunctions.push(func);
  }

  this.addSuperInitFunction = function(func) {
    if (func) initFunctions.push(func);
  }

  this.initAll = function() {
    initComplete = true;
    superInitFunctions.each (function(func){ func(); });
    initFunctions.each      (function(func){ func(); });
  }
}
var Base      = new BaseClass();
window.onload = Base.initAll;
