Multi-threaded Networking applications such as a simplified FTP, and reliable TCP-like communication protocol over unreliable links, implemented in C