The .So extension clashes with the .so extension used for shared libraries on file systems that are case-insensitive. Change to .pico instead. This matches what NetBSD uses. A full buildworld and buildkernel (default options) succeeds over NFS onto a case-sensitive file system.
I can document .po, .pico, etc but prefer to do so in a separate commit. The need for such documentation isn't created by this change, but has always been there. I'll do a followup commit (plus email to @current, etc) after this change is approved.
Maybe; possibly. One can argue either way, which probably means that it should be a separate commit if we want to go that route. To me it feels a little unnecessary, but can do it if you (or others) feel strongly about it.