For the C++11 case, shouldn't we just use C++11 shared_ptr directly, not go through boost?