Add locale negotiation to Icinga\Util\Translator

Translator::getPreferredLocaleCode($header) can now be used with the
HTTP "Accept-Language" header to return the best matching locale using
the user's preferations reported by the browser and our available locale
stack. Additionally Translator::getLocale and Translator::getLanguage were
replaced by Translator::splitLocaleCode to provide a more flexible
implemenation in order to identify specific parts of a particular locale or
the current one.

refs #6074
Use the preferred language sent by the browser, not the configured one

refs #6074
Merge branch 'feature/locale-negotiation-6074'

resolves #6074