Declared a SharedPtr that hopefully resolves on all platforms.

MSVC2008 has it in std::tr1, all the others in std.