The TextFileMessage class allows to publish a localized message like a disclaimer for medical, legal or financial advice.
If the directory structure isn't coherent, the class constructor triggers notice or throw exception. Switch to throw in both case a new I18nException.
Same for Message constructor and Language::getConfigVar
(Note: the InvalidArgumentException in Language::Load are acceptable, don't switch them to I18nException)