Add rudimentary upload!() and download!() implementations, logging leaves a lot to be desired, but it's working at least