Make gettext() work as expected

Not having gettext() return a translated string is very inconsistent with implementations in most other languages. This PR makes the function work as expected.