Introduce translator
Summary:
This allows simple sprintf()-like translations with support for selecting variants based on numbers.
It can be fairly easily extended to support other variants (e.g. based on sex).
Test Plan: New tests.
Reviewers: epriestley
Reviewed By: epriestley
CC: aran, Korvin
Maniphest Tasks: T1139
Differential Revision: https://secure.phabricator.com/D2744