make BOOST_DISPATCH_TYPEOF use typeof instead of decltype for GCC 4.4 in C++0x mode
make boost::dispatch::meta::result_of use decltype as fallback if result_of protocol is not followed. Allows to work with functors without result_type/result (such as lambdas) when in C++11 mode