Make "repo sync -j<count>" stop properly on Ctrl-C.

The threaded 'repo sync' implementation would very often freeze the
process when interrupted by the user with Ctrl-C. The only solution
being to kill -9 the process explicitly from another terminal.

The reason for this is best explained here:

http://snakesthatbite.blogspot.fr/2010/09/cpython-threading-interrupting.html

This patch makes all helper sync threads 'daemon', which allows the
process to terminate immediately on Ctrl-C.

Note that this will forcefully kill all threads in case of interruption; this
is generally a bad thing, but:

  1/ This is equivalent to calling kill -9 in another terminal, which
     is the _only_ thing that can currently stop the process.

  2/ There doesn't seem to be a way to tell the worker threads to
     gently stop when they are in a blocking operation anyway (even
     in the non-threaded case).

+ Do the same for "repo status -j<count>".

Change-Id: Ieaf45b0eacee36f35427f8edafd87415c2aa7be4
diff --git a/subcmds/status.py b/subcmds/status.py
index 69e2dbf..75d68eb 100644
--- a/subcmds/status.py
+++ b/subcmds/status.py
@@ -122,6 +122,7 @@
         t = _threading.Thread(target=self._StatusHelper,
                               args=(project, counter, sem, output))
         threads_and_output.append((t, output))
+        t.daemon = True
         t.start()
       for (t, output) in threads_and_output:
         t.join()
diff --git a/subcmds/sync.py b/subcmds/sync.py
index bfe146b..595a35a 100644
--- a/subcmds/sync.py
+++ b/subcmds/sync.py
@@ -261,6 +261,8 @@
                                       pm,
                                       sem,
                                       err_event))
+        # Ensure that Ctrl-C will not freeze the repo process.
+        t.daemon = True
         threads.add(t)
         t.start()