Use assign semantics when OS_OBJECT_HAVE_OBJC_SUPPORT=0

As is the case with Swift targets (including Playgrounds).
Add a comment.
Better check for NULL.
More accurate comment.