Convert UI to ReactJS

The UI should look almost identical to how it did before, but with a couple fewer bugs and a few more features.

The main new feature is that webdiff now shows the full list of files, which can be collapsed to a dropdown if desired.
is there any world where `Root` would look at `imageDiffMode` and decide whether to render an `ImageDiffModeSelector` xor a `DiffView`? Is passing the bool into each and making them opt in to being exclusive with each other weird?