Rework QSTask.

This supersedes #1603 and #1265.

Major surgery on QSTask, this makes QSTask a *real* model-only object, kills the deadlock issues between `QSTaskController` and `QSTaskViewer` and fixes the auto-show/hide behavior once and for all (at least it seems to behave right, now ;-)) :

- It will show if there's a new task and the prefs says it (it was).
- It won't show if during the time the task was created and the time the viewer reacts the task is done. This should fix #1040, and stop me wanting to bash it each time I open a new tab.
- It won't try to auto-close the window if you open it manually and a task finishes (this fixes a never reported issue ;-)).

Known issues/discussion:

- The *first* time it opens (set it to automatically open, quit and restart so you get the catalog startup scan), the view is messed up because it extends all the way to the right, which looks weird.
- I've setup minimal code to correctly to handle subtasks, but there's no viewer suppport, and I'm not sure it's worth it. It was *mostly* present, but the only thing I can think that would use that is the catalog scanning, and maybe the update system.
- I'm tempted to push up the `HIDE_DELAY` by a few millisec, so you can see the task completed. Right now it just closes before you can even see the task has ended (which looks the same to the user, but could be nicer).
- I've killed the `target`/`action` mechanism it had for task cancellation, instead relying on a `cancelBlock`.
- Documentation. I really want to do this one, but I need some more time.
- This *could* break plugins that used tasks (there was a `-(QSObject *)result` method I've killed, plus the effects of the major surgery). But I don't think that many plugins did that, and I think the API as it is is sufficient for "general user information". But if you find I broke some plugin, I'll happily revise and provide at least a *private* runtime equivalent.
- Maybe the preferences settings should be also specified in the Extras pref pane ? I think it's pretty hidden atm, IIRC by default it won't autoshow, and you can't change those settings unless you open it first and fiddle with the gear menu. #119 talks about that a little.

All in all, eyes are welcome so I'm breaking anything, and if you stop a thing I didn't point out in the list above, the