Renew the updater branch

Now with some actual consensus on what the updater will do!
Rework the update checking system
Offline mode support, part 1

Refactor MojangAccount so it exposes a less generic interface and supports login. Hide the ugly details.
Yggdrasil tasks are now only used from MojangAccount.
Implement DownloadUpdateTask

Installing updates is not implemented yet. That's next.
Implement update installer
Finish implementing update installation.

Also add the option to update on exit.
work on pasting instance logs

blame clang for formatting changes
Added WIN32_LEAN_AND_MEAN

Should reduce compile times and help get rid of some error things.
Fixes to pasting
Open the url direectly.
revert
Include shellapi.h in the updater on Windows.
fix revert
Fix build failures on Windows.

* remove atoll
* fix include path of updater depends
Merge branch 'feature_updater' of github.com:MultiMC/MultiMC5 into feature_updater
Work on new assets system. Working legacy assets importer, disabled assets downloading for now
More work on new assets system. Works given a properly constructed assets folder, no downloading yet
Finish preliminary offline support

* ProgressProvider now has an abort() call
* Abort button support added to the progress dialog
* YggdrasilTask and MojangAccount adapted to support abort

YggdrasilTask will time out after 10 seconds of no network activity, or when the user pushes the Play Offline button.
In offline mode, all instance update tasks are skipped! This will need further work.
Merge branch 'feature_pasting' of https://github.com/robotbrain/MultiMC5 into develop
Move pastebin button on the console window to the left

It's been there before, it's there now :D