Don't keep a seperate list of queries for each thread - report on ALL threads when calling collect()

Previously calling collect() just gave you queries from the same thread as the call to collect() which wasn't quite what I wanted - I want to see ALL the recent queries.  As a side-benefit, this also limits the number of queries kept in the queue to 500.