Added file descriptor add/remove; included reading from socket module.