select() on non-sockets

On Unix-based systems, select() can also be used on file and terminal I/O, which can be extremely useful. This doesn't work on Windows, though. Windows only supports select() for sockets.