call callbacks in thread, do not use boost on client side, renaming and cleanup

Please wrap with try/catch
~BinaryServer()
{
  try
  {
  }
  catch (const std::exception& exc)
   {
      std::cout << exc.what() << std::endl;
   }
}