Implement the mi:translate task, closes #1831

This implementation based on @bcsantos's approach.
Thanks a lot. And sorry for ignoring that.