dgram: make .send cb act as an "error" event handler.

This allows users to provide a callback that handles potential
errors resulting from a `socket.send` call. The original behavior
of emitting the error event on the socket is preserved.

Fixes joyent/node#4846.
Isn't this redundant, can't we just rely upon the return value from `self.emit` to determine if this was handled?