execute main event loop in a separate boost thread