[magneto] rewrite systray icons management, improve KDE, GNOME and MATE integration

This huge commit addresses several things:
- Fix bug #3995
- Force the GTK2 frontend when MATE is running
- Migrate to KStatusNotifierItem for KDE and hide the icon whenever
  it makes sense.
- Use SVG icons in the GTK3 frontend, improving eye candy when running in GNOME3
- The usual cruft cleanup
[magneto/gtk*] fix string format in both gtk2 and gtk3 frontends
[entropy.client.dep,solo] add support for --onlydeps, as per bug #3817

equo {install,source,download} now support --onlydeps.
Using --onlydeps, only dependencies of the selected packages are installed,
unless the selected packages are dependencies themselves.
[entropy.client.dep] use set.clear and dict.clear instead of del
[equo] update man pages
[eit] add --pretend support to push, pull and cleanup commands
[entropy.server] add "weak package files" support

Weak package files is a feature that makes possible to save a lot of
local space if enabled. Basically, all the package files no longer in
the repository are locally removed before their expiration. This reduces
local data redundancy with no real reliability impact.
Release Entropy 179
Tagging Entropy version 179
[entropy.server] fix typos in tidy_mirrors()
[entropy.server] s/extra_package_rel/package_rel/ in tidy_mirrors()
[entropy.server] tidy_mirrors: do not show packages as expired if they've already marked
[entropy.server] tidy_mirrors: do not show packages as weak if they've already marked
[entropy.server] tidy_mirrors: fix weak file detection logic
[entropy.server] _show_sync_queues: inform about package download as well
[entropy.server] _calculate_local_package_files: take into consideration .weak files
[entropy.server] _calculate_local_package_files: properly handle .weak files
[entropy.server] _calculate_sync_queues: ignore local package file if .weak file exists
[entropy.server] _calculate_sync_queues: ignore remote package file if a local .weak file exists
Release Entropy 180