Abusing await with a result type to achieve rust-like error propagation in C# | Hacker News Reader