Implemented optimization for empty function<> instances avoiding to test for emptyness in operator()