Split keyboard and mouse focus.

Fixes #3304.
Fixes #2075.
Fixes C&C chat focus bug.
Spaces -> Tabs in ViewportScrollControllerWidget.
Clean up ViewportScrollControllerWidget.
Rename ViewportScrollController -> ViewportController.
Move C&C world tooltip code into ViewportControllerWidget.
Use C&C world tooltips in RA and D2K. Fixes #2382.
Eat mouse-up events in RA production palette. Fixes #2192.
Merge pull request #3607 from pchote/widget-focus

Split keyboard/mouse focus and use C&C world tooltips in RA/D2K.