Je ne comprends pas la classe `NetworkStream`. Les services qui sont dedans n'ont l'air d'avoir rien de relatif au réseau. Si l'objectif est de spécialiser I-et-O-FStream, pourquoi de pas l'appeler IOFStream et être consistant dans le mauvais nommage des classes (en passant, penser à ajouter IOStream comme super-classes).

En quoi les implémentation héritées de `append_line_to`, `read_line` et `read_char` et `read` ne font pas l'affaire ? Si elles sont pas bonnes, ne devrait-on pas plutôt les changer plus haut dans la hiérarchie plutot ?

De plus, still_alive devrait sans doute être remonté dans Stream, la racine de la hiérarchie.