I would think, for a 100% supported scenario dll, that we need to add a Civ4ScenarioInfos.xml and from their we can add all the different types of info we need for each Scenario, then Events could then be assigned to a ScenarioType. Then we just need either a Button that appears in WorldBuilder, or in Cheat Mode, or a Control hotkey that brings up the Scenario Menu that lets you choose which Scenario and all its attributes is saved.
The Byzantines and Mongols are not set to playable basically because they don't fit with the default Historical Theme for M:C. The Mongols didn't appear what, until the 1200s, and Byzantium was already a thriving society at 476. I have plans to add Byzantium to the mod as a NationState just like the Pope and Rome is now, but I am still in the testing mod with Rome to see how it is working out. But any of the Civs can be configured in the XML to be playable.
Do Scenarios just use all the default xml values? Like if you placed Byzantine on the map and wanted the Player to be able to play them, would you then have to create a separate mod with separate xmls so you can set them as Playable? If so, then in the proposed ScenarioInfos we could have a "PlayableCiv" option where the dll would over ride certain settings for the Scenario, and likewise with other settings as well. The dll would check for Scenario and then automatically override certain settings.