showFactionSelectScreen(arenaRunData) {
    this.showFactionVisualsForFactionId(null, null);

    return this.transitionCurrentScreenOut().then(() => {
      // create new layer for faction choices
      this.outerLayer = new ChooseFactionLayer(arenaRunData);
      this.outerLayer.delegate = this;
      this.outerLayer.setPosition(UtilsEngine.getGSIWinCenterPosition());
      this.getNoFXLayer().addChild(this.outerLayer, this._z_order_content);

      this.deckLayer.hideDeck();
      this.deckStatsLayer.hideDeckStats();

      return this.outerLayer.transitionIn().then(() => this.outerLayer.showFactionOptions(arenaRunData.faction_choices));
    });
  }
Shows faction selection visuals for data.
@param {Object} arenaRunData
@returns {Promise}