Yes to all those. I've been thinking similarly for a while.
At some point if also like to go back through a lot of it to see if we could make it user more angular. Not sure how to inject it without user clicking a button or link. The goal would be to share this code with the server side plugin that I'm going to start on again.
As for the refactoring let's go ahead and do those in separate pull requests, to help make sure we don't miss anything.
I was thinking a good first step for the server side plugin was to inject some code that detects if the user is running chrome and if so, checks if the extension is loaded, and if not, puts a banner up to recommend installing it.