A guide on how to enable support for many new C# 9 features on older runtimes and frameworks that do not offer them out of the box