feat: Upload/download files to google cloud storage.

This change set adds the ability to upload or download files from google cloud storage.
It's wasn't intended to be used by library code, but it was supposed to be serialisable, so that it could be stored and used across browser sessions.