Implement tabs in ExtensionManagerDialog

Also...

* fix search field interaction when moving between tabs
* add bootstrap tabs for 2.3.1, remove old tabs
* fix model state when `downloadRegistry` fails

@dangoor or @njx to review?