Renamed extension.js -> applet.js

- Cinnamon applets require applet.js
- Updated metadata.json
Update copyright, description and authors
Fix imports

- Remove redundant imports or ones that won't work in Cinnamon
- Added nasty workaround for getting applet path for use in imports
Convert init from ShellExtension to Cinnamon Applet

- We can then use the more stable and simple Cinnamon Applet API
- Will need to find other ways to do some things (e.g. bind shortcuts,
  load schemas)
Port HamsterApplet to use applet APIs
Disable convenience functions for now

- Will port settings and translations to equivalent Cinnamon APIs in due
  course
Rework icon/label/tooltip appearance

- Easier logic for use with Cinnamon APIs that directly change the
  applet's appearance (e.g. set_label).
- Also storing the label, tooltip will make it easier to dynamically
  change the appearance when integrated with the Cinnamon settings API