Move the broad-category classification logic out of TypeName_Search and
into WingTypes, store the result in the type registry, and update
TypeName_Search to print the cached category.
Switch the Wingman protocol to null-delimited JSON, rework the server's
socket buffering and send logic, and document the bugs found during the
review. Also refactor WingProperty's numeric setters into clearer helper
paths while preserving the existing conversion rules.