gameObjects now uses shared_ptr instead of raw. bullets are being deleted upon death