Create AutoUpdater, teach it to check new updates

It can't read a diff or apply an update yet, just check.
Teach the AutoUpdater to read a flist

We can now read the list of files in an update, along with the install path, file size, and signature

Everything, metadata and files, is signed with ed25519, but not encrypted
Add qtox update-server tools

qtox-updater-sign takes data from stdin or as argument, signs it with the updater's private key, and output the signature + the data

qtox-updater-genflist generates a flist, a serialized list of AutoUpdater::UpdateFileMeta for the qTox updater
Additional error info for failedToAddFriend, checks if friend is added already
Download and applying updates, qtox-updater

The auto-updater is essentially done, except for the GUI. For now this is only an API.
The API works, but the tools to manage the update server would need some love
Add an option for auto-updates on Windows

With the update server hosted on my laptop...

Fun fact: Updates are really easy to mess up right now. If I forget to update the update server, everyone gets downgraded. Upload a bad file and everyone will crash. Fun stuff.

Upates Are Experimental™ and off by default.
Merge branch 'autoupdate'
Make qtox-updater-genflist compatible with qtox-updater
Formatting, tr() for UI strings
Merge branch 'pr686'
Add two helpers for the update server
Italian translation: update
Merge branch 'pr689'
Add the option to open qTox when a message is recived
switch to relevant chat room when minimized
fixes #688, except that for me it doesn't actually unminimize
UI things
properly unminimize
Merge branch 'pr691'
Add S3 update deployement script

Did I mention that https://s3.amazonaws.com/qtox-updater/ is online ?

qTox is now officially SRS BZNS
read receipt infrastructure