Working progress
Merge branch 'cout-to-debug' into multiple-threads

Conflicts:
	python_embed/interpreter.cpp
Merge branch 'cout-to-debug' into multiple-threads
Getting towards multiple threads
Large changes to references and locking (RAII style).
Added make_shared from C++14.
Improved PlayerThread.

Still not a working commit; errors on handling the thread state.
Fixed error where destructor for ThreadState didn't clear before deleting.
Removed redundant make_unique.cpp
Minor polish
Relevant comment
Merge branch 'master' into multiple-threads
Merge branch 'multiple-threads'