C++std::function: To wrap any element that is callable