Also, use `CompletionToken.None`. It's not always what someone wants in production, but

1. The allocation of cancellation tokens is a pretty application-specific operation
2. Console applications in particular work well with `CancellationToken.None` (provided they don't wan need automatic timeouts)