Allow binding to non local address if supported

is there any chance this could get merged ? I can update documentation and maybe improve the patch but not unless it can get merged.

What it does is allowing to bind to any address (as far as I know only FreeBSD and OpenBSD support this):

```ruby
EM.bind_connect('1.2.3.4', nil, '192.168.0.1', 8000, Handler)
EM::open_datagram_socket('1.2.3.4', nil, Handler)
```

The main use is writing transparent proxy as you can bind to any non local address with this patch (only enabled if your are root and currently only for OpenBSD).