__unsafe_unretained does not prevent self retain-cycles when not under ARC