Added ReportThread

This Abstract Class should replace Work, and should be sent over the
Sockets instead of Threads