Big Cleanup in appIndicator.js: Use new proxy code

The main objective was to move away from the static
proxy based on the xml interface definition, since
the org.kde.StatusNotifierItem interface has subtle
differences in Unity/KDE and the handling of New*
signals was just awkward. The resulting code overhaul
infected pretty much the whole codebase.

This is necessary groundwork to eventually support
overlay icons, pixmaps and tooltips like KDE.
Huge icon handling cleanup and extension

Now supporting overlays and pixmaps! Also worked on
getting updatinng and caching semantics right.
Cosmetic code cleanups

* Organize imports
* Remove modelines
* Update Copyright
* Use umlauts (we live in 2014, we can use UTF-8)

No functional differences, hopefully no new bugs.