Defer entity deserialization

This introduces EntityHolders which are used by EntityContent
as placeholders for not-yet-deserialized entities. This should
avoid overhead especially for creating deep copies.

Bug: T74158
Change-Id: I51f3d5860859c25acfb535d4a5725ceced9c090b
Use same SidebarHookHandlers instance during request

on wikipedia, it is called hundreds of times when we really
need and should use one instance.

 2.21% 9.216    196 - Wikibase\Client\Hooks\SidebarHookHandlers::newFromGlobalState

Change-Id: Ie8c86a733ab8352679688c515386d8ee5041a9b2