[4/N] WindowDecorViewHost: Add SurfaceControlViewHostAdapter

Spiritual revert^2 of I08111bfd4728e5223ed078916255313b13a4093f, but
broken down into smaller changes.

Introduces an adapter around SurfaceControlViewHost that handles the
setup needed to start using one: creating the backing surface and
windowless window manager. It also wraps #setView and #relayout into a
single #updateView function that internally checks which is needed and
whether an illegal view swap is being attempted.
This adapter abstracts some common utils out of
DefaultWindowDecorViewHost so that they can be shared between it and the
upcoming ReusableWindowDecorViewHost in a follow up CL.

This is also a pure refactor, so no behavior or performance changes are
expected with this CL alone.

Bug: 360452034
Flag: EXEMPT refactor
Test: atest WMShellUnitTests
Change-Id: I9738a6caf4f2efb25b1e30e5fee46ff6b150cf1b
4 files changed