Cleanup parallel_emerge exit conditions to fix hangs.
Cleanup parallel_emerge exit conditions to fix hangs.

I've cleaned up parallel_emerge to send explicit signals to children to tell
them when they need to exit. I also cleaned up the CTRL-C handling to
correctly print data when interrupted by CTRL-C (previously, the print
thread exited first, so the data we wanted on the failure wasn't
actually printed.)

BUG=chromium-os:5976
TEST=Test several board emerges, including exiting early with CTRL-C.

Change-Id: Iab6efc8e1bf868106244a6210bd02e9e8283af37

Review URL: http://codereview.chromium.org/3534006

mjg59/scripts,mjg59/scripts,nicescale/scripts,BugRoger/scripts,marineam/coreos-scripts,fivethreeo/scripts,coreos/scripts,gtank/scripts,andrejro/coreos--scripts,BugRoger/scripts,sigma/coreos-scripts,fivethreeo/scripts,gtank/scripts,marineam/coreos-scripts,smilart/scripts,crawford/scripts,smilart/scripts,BugRoger/scripts,crawford/scripts,gtank/scripts,andrejro/coreos--scripts,bcwaldon/coreos-scripts,endocode/scripts,glevand/coreos--scripts,sigma/coreos-scripts,marineam/coreos-scripts,bcwaldon/coreos-scripts,mischief/scripts,vmware/coreos-scripts,trnubo/scripts,zhang0137/scripts,smilart/scripts,mischief/scripts,coreos/scripts,bcwaldon/coreos-scripts,trnubo/scripts,endocode/scripts,mjg59/scripts,sigma/coreos-scripts,andrejro/coreos--scripts,zhang0137/scripts,nicescale/scripts,nicescale/scripts,glevand/coreos--scripts,fivethreeo/scripts,endocode/scripts,trnubo/scripts,crawford/scripts,zhang0137/scripts,mischief/scripts,vmware/coreos-scripts,vmware/coreos-scripts