Fixed so that CreateLinearRequests doesn't sleep but returns 0 when pending batch needs to be completed before creating more requests.
Basic support for multiple workers.
Wait for other workers when batch needs to be completed before fetching more requests rather then spinning. Improved thread-safety design.
Merged Erik's client multithreaded fix.