Ubuntu: toolbar option to change network policy

Implements offline, expensive and online options

languagechooser.svg is part of the Ubuntu-mobile-icons package
available from http://packages.ubuntu.com/trusty/all/ubuntu-mobile-icons
and is available under the CC-BY-SA 3.0. Copyright by 2004-2012,
Canonical Ltd.

REVIEW: 117910

Removed Q_INVOKABLE from NetworkWatcher slots.

Created a simple JS variable to act like an enum when switching and selecting
network connection states
Add AppStream metadata file for Trojita GUI
Import from OBS

This is needed to handle the newly added AppData file.
IMAP: fix FETCH FLAGS processing

It turned out that the check which the code was following was actually a pretty
dumb one -- if spectacularly failed to handle the case where the new flags of a
message were an empty set. This means that the message *is* unread (it has no
\Seen flag), and hence should be counted as a new one.

On most IMAP servers (but not on GMail), this would be very often masked because
the server would send back the \Recent flag most of the time (unless our session
lost the race). GMail, however, doesn't set \Recent on any message, and
therefore it was an excellent candidate for hitting this bug.

It seems that this has been broken for quite a long time:

    commit 74b222e5c7385b04ccc0aeddbf0d174d6c6462d6
    Author: Jan Kundrát <jkt@flaska.net>
    Date:   Wed Mar 21 14:02:20 2012 +0100

    IMAP: do not recalculate various message counts when the flags haven't changed

Many thanks to James Harkins <jamshark70@gmail.com> for reporting this bug and
providing enough details in order to find the root cause.

v2: Add an explicit check for the correctness of the recalculated number of
unread messages in some corner cases, like when a new arrival gets immediately
expunged. Also work with messages where some of them are read and some unread in
order to avoid testing "just" for the case of zero unread messages.

BUG: 334576
REVIEW: 118075
Fix Trojita's idea on where the plugins are going to be located

The old code mistakenly assumed that CMAKE_INSTALL_LIBDIR would alweays be
relative. That is not the case; see for example [1] [2] [3].

[1] http://lists.freedesktop.org/archives/packagekit/2013-September/026161.html
[2] http://www.cmake.org/pipermail/cmake/2012-February/049206.html
[3] https://bugzilla.redhat.com/show_bug.cgi?id=795542
Sync with the OBS for correct version numbers

The package name will now include the git hash, and Trojita will report itself
using format very similar to what the git builds do. The -git- is replaced by
-obs- to make it clear where it comes from; the idea is that this will make it
easier to diagnose where the bug reports are coming from.
Ubuntu remove unused icons from MessageListPage.

There is no need to have a performance hit by drawing these two icons
for every delegate if they do nothing or a planned to do nothing

REVIEW: 118095
SVN_SILENT made messages (after extraction)
Make attempts to reconnect after a network error
After switching to offline mode due to a network error, the model tries to reconnect repeatedly, with increasing timeouts.
This is done until either trojita gets a working connecton, or reconnect attempts are aborted by choosing network:offline in the menu.

BUG: 327651
REVIEW: 118079