Add binary semaphore locks for the shared indices, previously seen articles, and stop words data structures.
Download and parse each article in its own separate thread.  Ensure that all article parsing threads finish before exiting from the BuildIndices function.