cleaned up and document likely_retain and likely_release