lfroen: Where did I miss something? It's quite possible that I overlooked a couple of strings when translating.
GeVauDan: It wouldn't be hard to integrate a translation on per-template base (assuming we establish a default "template template" we only had to do the work once), but this would be a client-side feature. (I prefer JSON over XML myself.) This is nice, because you can change the language on the fly, but it adds unnecessary complexity to the code (we need a container for every translatable string) and this would of course not work when JavaScript is not available.
A proper solution would be to do this on the server side, removing the complexity with only a little less flexibility. (You have to reload the xhtml pages when you change the language.)
Thinking about it, I actually like the idea, but I still lack the time [and a wardrobe and some chairs] to write some code for this.