Can't add integers to strings so switch to stream operator
Commented out unused vars
Added missing virtual destructors
Removed self assignment
Removed unused variables
Changed to std::thread from boost::thread