Partial fix for VC 2010 SafeBinder build.

When invoking result_of<> to determine the return type of the member
function, pass the Receiver type as the first argument, as explained
at http://codeidol.com/community/cpp/the-result_of-class-template/22110/

Also rename the return type typedef to result_type to match the
functor produced by bind()