Removed some unnecessary classes, wired up more of the events, and wrote a test class.

Test works except for determining the remote ip and port for a udp
socket. Needs further research, but initial impressions are that the ip
and port will have to be included in the payload.