Clean projects in a background job when project settings' change

Cleaning the projects in the UI Thread was causing UI freeze. The
fix is really simple: clean the projects in a background job.

Note: The implemented solution is inspired by the Eclipse
      ``CleanDialog`` component.

Fixes #1001527
Merge pull request #323 from dotta/issue/project-settings-should-not-trigger-rebuild-in-ui-thread-1001527

Clean projects in a background job when project settings' change