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
