more robust handling of canvas->img downloading. Large images were bumping up against some browser's URL limit, and in rare cases causing crashes. This approach uses blobs instead, which are hopefully less prone to length limittions