Fix bug where settings are not saved on Linux+Mac

When the preference window is closed by clicking the 'x' on
the window frame, the "dialogaccept" event does not fire
for whatever reason. Therefore, the currently edited journal
filter is not being saved. This commit fixes this issue by
listening additionally to the "close" handler. Note that we
still need to listen to the "dialogaccept" event, too, as
the "close" event does not seem to fire if the user closes
the preference window by hitting the enter key while the
cursor is in a textbox (at least not on Linux).
Fix bug with editing builtin journal filters.

When the user edits a builtin journal filter, the builtin
filter gets disabled and a new custom filter with the edited
values is added. However, due to a bug in sqlite's lastInsertRowID,
if the edited filter was deselected, then selected again and edited
again, *another* custom filter used to be added. This commit fixes
this issue by replacing the lookup of lastInsertRowID by something
more stable.

Additionally, there was a bug where the id of the first custom filter
(id=0) clashed with the marker that marked a new (not yet saved in
database) filter. We now mark new filters with id===undefined instead
of id=0.
Display builtin filters gray on pref window.
Display result page from web instead of local resource

The result page needs to be displayed from a publically
visible web site in order to implement a "share on
Facebook" button. (Facebook checks the referrer of
requests to publish custom stories to protect privacy).
Add "Share on Facebook" button to result page

Since the result page is now loaded from the web, this
commit does not actually contain the result page but it
does contain some changes to the backend-code that were
necessary to make this work. In particular, we now extract
the author names from the zotero item and store them in
the job object.
Fix bug that prevented welcome page from opening

The Dontprint welcome page used to be opened before
session restore was done. This caused session restore
to overwrite the opened tab if it was active. We now
open the welcome page after session restore is done.
Adapt settings window to new e-mail sending backend.

* Also, remove ccEmail from preferences
* Some pending TODOs (marked as TODO in code)
Adapt welcome page to new e-mail sending infrastructure.
Implement new e-mail sending infrastructure

E-mails with the converted articles are now no longer sent
from the user's Gmail account but rather from a server-side
script that can be reached on dontprint.net. This simplifies
the Dontprint setup since users are no longer required to get
a Gmail account.

In this commit:

* Change the routines within the life cycle of a Dontprint job
  to call the new e-mail sending backend. This greatly simplifies
  the code.

* Adapt result and progress pages to new e-mail sending
  infrastucture (since the "status" stages of a job changed and
  the return codes from the server-side backend changed slightly)
Cleanup some small TODOs.

Mostly removing debugging code.
Rename pref string.

Rename preference "uploadInBackground" to "successPageInBackground"
to reflect the fact that there is no upload tab any more.
Replace references to github website by new dontprint.net page.
Remove dev-utils directory.

The contents of that directory will be tracked
in a separate repo "dontprint-artwork" that combines
artwork from all Dontprint repos (the main addon,
the website & the facebook page).
Update dontprint-spaking.png to include a ".net"
Prepend final file name with author name
Small typo
Update builtin Zotero parts to version 4.0.19.