Classes for creating, selecting and non-blocking reading and writing of buffers from files and sockets.