Refactored code colones out of Main, moved thread management over to an
executor.  Introduced a bug that doesn't allow one thread to finish
processing.