core: DownloadManager: fix signalling

- When aborting downloads we need to disconnect the error signal early
or we might run into a deadlock when quitting application. Instead we
emit a OperationCanceledError after aborting has finished.

- A downloadJob must be removed internally *before* signalling
downloadFinished or we might run into a race condition/segfault when
quitting the application.
core: DownloadDialog: allow to de/activate the buttons
core: handle quit centrally and inform user of running downloads

For all events that lead to application quit we trigger now quit() in
core.js which informs the user if downloads are in progress.

Note, that connecting to QQmlApplicationEngine::quit() does not work
because a popup dialog does not block the quit process on android.
Therefore we need to trigger Qt.quit() manually *after* the download
dialog has finished.
colors: inform user if voices are missing and delay dataset init

Using checkForVoices() helper

Introduced a mode property to FindIt superclass and only open the
missing-voices dialog for the "colors" instance.

Also we need to delay the Dataset initialization to activity startup
or the sounds are not updated when the locale is changed.
ported align4 activity
align4, minor graphical improvements
align4, normalized the falling speed
align4, removed level changer in the bar
add install/uninstall icons and application icon for windows nsis package generation
fix for linux/unix systems
align4, removed debug logs.
Merge branch 'brat_align4-2players'
align4, simplified version of checkGameWon()
align4, simplified management of the hover property
align4, fixed copyright header
align4, code cleanup

removed useless variables.
align4, simplified code for the model initialization
align4, better variable init

It is important to init the variables in the start and not only as
global var because uppon game reentry the global part is not rerun
as the script is not reloaded.
align4, created a setPieceState() function
align4, minor, removed a useless temp variable