* Make FDB_USE_CSHARP_TOOLS authoritative across the build
Historically, FDB_USE_CSHARP_TOOLS acted as a preference hint, and parts of the build could still probe for or assume the presence of C# tooling even when it was disabled.
This change makes the option authoritative and consistently honored across the build system. C# tooling is now used only when explicitly enabled and available, and all downstream assumptions are gated accordingly.
The default configuration and tool preference order remain unchanged.
* cmake files changes
* WIP: tmp test
* Honor reviewer feedback on C# toolchain detection and actor comparison
- Stop assuming C# tooling availability on Windows; explicitly probe for
.NET using find_program.
- Prefer .NET over mono on all platforms, with mono used only as a fallback.
- Fail explicitly when FDB_USE_CSHARP_TOOLS=ON but no C# toolchain is found.
- Preserve Python/C# actor output comparison when C# tooling is available,
skipping it only when C# is explicitly disabled or unavailable.
- Simplify Python argument parsing and remove unnecessary textwrap usage.