Implements a talk client and talk server. The classes in this package implement all the functionality to implement a talk client and server. The protocol for the client and server is compatible with the Unix talk command, and ntalk server. This package does not include the user interface for the talk client. To implement a user interface, you need to implement the ITalkApp interface and the ITalkView interface. Write a toplevel TalkApp class that implements the ITalkApp interface. When the user wants to connect to another user, the TalkApp should create a TalkSession object, passing a reference to an ITalkApp to the TalkSession constructor. Then the app calls the TalkSession.connect() function. This function asynchronously tries to connect to the remote user. It immediately calls the ITalkApp.createView function, which should return an implemtation of ITalkView. The TalkSession will then register a listener with the ITalkview object. Whenever the local user types something, the ITalkView notifies the listener, and the TalkSession sends the input to the remote user. Whenever the TalkSession receives input from the remote user, it notifies its ITalkView object, which displays it for the local user.