Add SetSockOptNil method on Socket.

Since Go will not allow nil where a string is expected, there is no way
to change the implementation of SetSockOptString to accept nil values.
This commit shows one way to deal with this.