C++11 std::shared_ptr in public API

I think that C++11-compatible compilers are wide-spread enough now (at least on Linux) that using C++11 in the external API should not be a problem.