Context:
I am implementing a BigRational struct in C# which requires various arithmetic and comparison overloads. The code in many of the overloads l