Just saying quickly, because I don't have much time, but translation implementation should be done in one (or more) files of variables, which then are used by the templates and replaced by the actual text. To maintain compatibility between version updates, if a string isn't found, the original English one should be used.
That'd useful for a forum specific for something of a certain country or language.