[BZ#790301] extensions: Modernize JS usage
@fmuellner
Submitted byLink to original bug (#790301)
Description
First fix a couple of style issues, then modernize the style to use:
- arrow notation
- method syntax
- ES6 classes
- GJS' ES6 class wrapper for GObject classes
- Function.prototype.bind()
Doing a similar cleanup for gnome-shell is unfortunately harder: While ES6 classes can inherit from Lang.Class, the reverse is not true. So this will need some more thought (or at least enough heads-up before pulling the switch) to not break extensions left and right ...