Added exception handling to promise::set_value in Protocol::set_answer