Looking up redirects is currently implemented in AbstractContent::getRedirectChain() and WikiPage::getRedirectTarget(). It should be handled by a storage layer service object instead.
Interface draft:
```
interface RedirectLookup {
getRedirectChain( PageIdentity $page ): LinkTarget[];
getRedirectTarget( PageIdentity $page ): ?LinkTarget;
getUltimateRedirectTarget( PageIdentity $page ): ?LinkTarget;
}
```
The implementation should be based on the `redirect` table. The interface could be implemented separately, but putting the logic into `PageStore` may also be ok.
Note that Content should keep getRedirectTarget(), though it should not return a Title but a LinkTarget. That probably means deprecating the method and introducing a new one. That is however outside the scope of this task.