V1.0: Recursive scan v2.0: Multi threaded scan Collects more metadata v2.1: Uses AVX2 instead of SSE2 v3.0: Simple mutex/critical section based MPMC queue reusable hashing buffer v3.1: Lock free MPMC queue v3.2: Making the lock free MPMC queue growable Add padding to avoir false sharing Add sleep() and SwitchToThread() to limit spinning