[FEATURE] added a concurrency-safe queue 

Features:
 - the queue can be fixed-size or grow dynamically
 - it supports multiple readers and writers
 - it supports C++11 move so that (in theory) elements w/o copy c'tors can be enqueued, e.g. resources like threads, semaphores
I find it convenient to wrap such comparisons that are returned or assigned in parentheses, e.g. `return (me.headPos == me.tailPos)`.

Just a suggestion.