Greatly simplified threading concept

Up to now, each worker thread was a consumer and a producer for the
same input queue. This has been changed now so that all worker threads
consume from a single 'unseenQueue' and write the links which they mined
from web pages to a 'minedQueue'. The minedQueue is read by the main
thread which then either posts a poison pill or re-schedules the links.

The new model seems to work well, requires less synchronization, saves
about 10 lines of code and is much easier to understand.