Live scanning

The scanner now updates UI during the scan with changes for each directory. The scan can take really long time for a large/slow collection, and this change makes Clementine usable during the scan.

This is my first contribution to Clementine so someone who really understands how the scanner works should check if there are any errors in the code.