Prior to 2004, the site language was configured via $wgContLanguageCode, derived from that were $wgContLang (object). $wgLanguageCode was just a cached copy of $wgUser->getOption('language').
In 2004 (r5492, 5537c5b85e, MW 1.3), $wgContLanguageCode ceased to be supported as a configuration variable. Instead, the site language would now be configured via $wgLanguageCode instead and the confusion started. Its value was copied to $wgContLanguageCode for back-compat, and also because $wgLanguageCode was still also used to store User::getOption('language') right after initialising $wgContLang.
Sometime between 2004 and 2006, $wgLanguageCode was relieved of this secondary purpose, as documented in r5492 (5537c5b85, MW 1.8), leaving it as just a configuration variable for the site language.
Let's remove any uses of it and then remove it from Setup.php.