Make "Pushing into queue" into another thread.
Merge CMakeLists from Linux box.
Make CMakeLists cross-platforms for Mac and Linux.