A software program provides a unified, ever-present user interface which manages
a user's interaction with other software programs. The software program includes
an executable portion and a dynamic linked library (DLL). The software program
uses hooking and subclassing in a Windows environment to gain control over when
and where display of the user interface occurs.