continuing the shared_ptr apocalypse