select has reopen-on-close capability and exposes channels and 'threads'