Fix bug where options were not getting passed in to socket creation call

io.util.merge(..) doesn't return the merged value, it instead alters the first parameter ... we were calling the function in the parameter list

@davideaster would you mind reviewing?