Does this mean that all the NSWhatever symbols are visible to anyone with a debugger or readelf or whatnot?
If you mean the functions themselves, not the symbols -- those are in the dyld cache[1], not the kernel. It's unclear from this article how easy it will be to dump the dyld cache in iOS 10.
Linkers rely on names and addresses; more precisely, name->address mappings.