or possibly, check if there a cache to fall back on before making the network calls, if there is no cache,
make the network calls the "old" way, letting errors bubble up. Otherwise we now potentially have to be able
to handle a case of "no exception, but None returned" in addition to handling cases for
"expected data returned, no exception" and "exception raised".