Fixed subtle concurrency bug. There was definite problem in not retrying after a failed try_claim during the matching process. This commit has also made the memory accesses on slow queues much more pessimistic (i.e. all sequentially consistent, extra memory fences). Unclear how many of these need to be so pessimistic - see bug #9.