Why is Node.js single-threaded?