code: function() {
          if (this.isDestroyed) { return; }
  
          // At this point, the App.Router must already be assigned
          if (this.Router) {
            var container = this.__container__;
            container.unregister('router:main');
            container.register('router:main', this.Router);
          }
  
          this.runInitializers();
          runLoadHooks('application', this);
  
          // At this point, any initializers or load hooks that would have wanted
          // to defer readiness have fired. In general, advancing readiness here
          // will proceed to didBecomeReady.
          this.advanceReadiness();
  
          return this;
        }
docs: Initialize the application. This happens automatically.
  
  Run any initializers and run the application load hook. These hooks may
  choose to defer readiness. For example, an authentication hook might want
  to defer readiness until the auth token has been retrieved.
  
  @private
  @method _initialize