G'bitte, soviel Architekturastronautismus habe ich ja selten seit der großen Javaschwemme auf einem Haufen gesehen. Selbst PHP-Frickler sind nicht davor gefeit, wenn die praktische Erfahrung aus dem Echten Leben™ fehlt.
Die korrekte Antwort lautet: in deinem MVC-Framework haben einbaute Konfigurationsklassen nichts verloren. Lagere sie aus und melde sie fürs Packaging als Abhängigkeit.
Beim Design der Konfigurationsklassen orientiere dich an Config::JFDI (überlässt dem Benutzer die Wahl der Mittel, überlagert örtliche Konfiguration in die Grundkonfiguration) und Config::Any (Systemer werden dir an die Gurgel springen, wenn du nur Ini anbietest, konzentriere dich zunächst auf die ausdrucksstarken hierarchischen Formate, videlicet General). Dabei kommst du mit Rollen (in PHP nicht möglich) oder Einfachvererbung aus, und möchtest vielleicht Callbacks exponieren. Das ist keine Raketenchirurgie.