Fix errors generating coverage reports.

server.close() is async, so treat it as such:

http://nodejs.org/api/net.html#net_server_close_callback

This doesn't seem to matter when test files are run in separate
processes using `npm test`, but it does when they are run in the same
process for the coverage report.

@simov fyi (hopefully this is the only issue with our coverage reporting)