core - i18n API - move to its own module