This changes the way application communicates with the GoogleAds API. When a user requests something, a message is sent to a HostedServices using a Channel. The HostedService then calls one or more SubServices that perform the actual work.
Please note that the tests haven't all been updated to use this new architecture. I added a [Fact(skip)] for now, but plan to update those when I have the time.