Added a workaround for a MSVC++ 8.0 compiler/linker bug in the BOOST_FUNCTION_FUNCTION::is_nothrow<> member function.
Fixed signatures/template parameters for the global swap(), operator==() and operator!=() functions.