Lands the v0.0.8 handoff's #1 priority: a streaming binary
reader for Synchronet v2's CTRL/FILE.CNF (file libs + dirs)
and CTRL/MSGS.CNF (msg groups + subs), so SYN2 sites are
enumerated from their authoritative on-disk config rather
than the v0.0.8 filesystem-scan crutch.
bbs.fmt.syn.v2.areacfg walks SCFGLIB2.C:23-491 + SCFGLIB1.C:444-717
byte-for-byte, skipping the variable-length leading sections
(fextr/fcomp/fview/ftest/dlevent/prots/altpaths) so the offset
of total_libs/total_dirs lands correctly regardless of how
many of each leading type the sysop configured. Per-dir and
per-sub path fields are read RAW; consumers resolve substitutions
via Syn2DirResolvedPath / Syn2SubResolvedDir against the MAIN.CNF
data_dir (vendor's data_dir_dirs / data_dir_subs behaviour).
TSyn2Base.DoOpen lazy-loads both files; DoListFileAreas /
DoListMsgAreas prefer the parsed catalog when present and
fall back to the filesystem scan for hand-fed installs.
TSyn2MsgArea.DoLoad now populates FInfo (was an empty stub).
21 new tests cover FILE.CNF round-trip with multi-lib /
multi-dir, MSGS.CNF round-trip, end-to-end TSyn2Base
integration with MAIN.CNF data_dir resolution, and
filesystem-scan backwards compatibility. All 395 tests pass
across all 6 cross-targets.