fix(i18n): allow core to load translations for a specific language on-demand

By default Elgg is loading only English and the language of the logged in user.
These two are not enough e.g. when we want to send a notification and the
recipient is using a third language. This fix makes it possible to load translations
for a specific language when necessary.

Refs #3151 
I was wondering the same. But in fact I don't think the exception will happen unless something is *seriously* broken.

Only possible consequence of the function failing is that someone might receive a notification in the wrong language. So I suppose we might as well just remove the exception completely?