Add function_object and improve overloaded_function and fused (available function ptr).