allowing nil in set-socket-timtoues
yuck, howd that happen? really need more tests i guess, if one of the main exported functions changes names randomly and all tests pass...
adding test TODO