start monkeying with shared_ptr, not working yet