MT#3961 Provide Dropdown to change the language

We save this setting in a session variable and a cookie
valid for 3 months
MT#3961 more translations
MT#3961 using specific identifier for datatables table

to avoid getting our id from the translated name, because that would probably
contain unicode, which is not a problem in HTML5 or higher, but below.
be careful to create a different identifier for each datatable you create
in a template, othewise the previous one would be used, and uniqueness is gone!