Simple Node.js Application With Socket.io Can't Load Client JavaScript

This is so frustrating, trying to get a simple node.js + socket.io application going, but the client can't load the javascript library.

    GET http://localhost:4000/socket.io/socket.io.js 404 (Not Found)

Here is the node.js app:

var app = require('express').createServer();
var io = require('socket.io').listen(app);
io.set('log level', 1);

app.listen(4000);

app.get('/', function(req, res) {
    res.sendfile(__dirname + '/index.html');
});

io.sockets.on('connection', function(socket) {
    console.log("got a connection");
});

Any ideas what could be going on?