Fix socket hangups

This pull appears to fix the uncaught socket hangups we were seeing with this project. It's still unclear if adding `res.on('error', fn)` fixed it or changing `once()` to `on()` for existing listeners fixed it (or both). Finding out would require more intensive testing.