pipe.c not fully functional yet