Use packaged_task since promise seems broken with vc11