Craig,
not something I have done yet either but after having an enquiry last year for a multi language site I did a bit of research and my idea was to "sniff" the browser header as this returns the preferred language of the surfer and use this to present the appropriate language drawn from the database but it never went any further than that so I have no idea how workable or not my idea is.