deprecate SourcegraphWebApp class component in favor of adjacent function component
Created by: sqs
DRAFT
Class components are being deprecated in React in favor of function components using hooks. Using hooks allows for greater composition and less complexity, and it will also make server-side rendering possible.
Reviewers: I didn't make an attempt to factor out all of the behaviors in the SourcegraphWebApp class component to a separate hook (as in #24227 for theming). I also didn't add any tests yet. I'd love your advice on the best way to go about this refactor before investing more effort here (and if you feel that the general integration tests have good enough coverage so that this otherwise good refactor shouldn't block on a bunch more unit test coverage).
(I'm doing this because it will help with server-side rendering, which is my current fun hack project. :)