A handy option, besides checking the accept language header, would be also to check an optional cookie value for a language code as well.
Maybe the following optional config statement:
accept_language_cookie <name of cookie to check>
And give the value of the cookie preference over the language order given in the accept language header.
This would allow the application to override the automagic language value (by setting a cookie), in case the uise would like to choose a language other than what their browser is set to.