[Boost-users] Covariant return type, method hiding, and shared_ptr advice