Create a pair of programs, a client and a server, to distribute the functions of the library you developed. The client and server will interact using a specified protocol, same as many of the real application-layer protocols found throughout the Internet. The goal is to allow a local machine to access all the functions of the library, while the actual library is running on a remote machine elsewhere on the Internet.