Refactored to Translator object with Strategy-like translation choosing