NOTE: This blocks T251212
The MobileFrontend and WhoIsWatching extensions make modifications to the footer. This is achieved via an incredible amount of indirection passing data between BaseTemplate and SkinTemplate as well as side effects from hooks. This makes it difficult to safely modify parts of the skin code that we need to refactor as part of desktop refresh. There's an opportunity to simplify all this code so it's safer to reason with.
= Acceptance criteria
 The method BaseTemplate::getFooterLinks is soft deprecated in favor of Skin::getFooterLinks
 A new hook will be introduced to Skin::getFooterLinks that allow modifications to the data used to generate the footer.
 WhoIsWatching is updated to use the new hook
 MobileFrontend is updated to use the new hook
 Vector is modified to use the new Skin::getFooterLinks method.
 The old way of modifying the footer will continue to work but e will detect where modifications to the footer have occurred inside the SkinTemplateOutputPageBeforeExec hook and log a warning that they should use the new hook
= Sign off steps
 The footer is essentially a menu although the code does not behave like a menu. Setup a new task to make Vector treat it like a menu.