WIP: Refactoring of datastore.
WIP: Refactoring of datastore.

Use abstract representations for resources and descriptors, implement
LocalFileCache, GoogleCloudStorageCache and LayeredCache
implementations.

This is not guaranteed to be actually truly operational and correct.

Also added support for setting up GCS based cache when run as a
standalone script.

catalyst-cooperative/pudl,catalyst-cooperative/pudl