Sort out unknown research targets
Spotted during work on #45068. A comment in common/research.h says: "For enemies, A_UNKNOWN is sent to the client". Actually, if you don't have embassy, you don't get research info and in the memory there is the default A_UNSET value. Also, if you lose embassy data (wonder deprecates, teammate with embassy killed) during client session, then the research info gets frozen in the last known state that is possibly not wanted or should look another way.
A good implementation will do changes on network protocol level, don't you think? (Sending full research info packet with dummy values sounds excessive)
Targeting this to block S3_1 npf - doesn't mean we can't make some kind of solution to S3_0 (maybe even with optional network capabilities)
If someone is about to look at this, note that I have partly written patch for this, but currently waiting for me to get some other things out of the way. You may want to get that instead of writing everything from scratch.