Change upload approach to something that should work consistently

As described in issue #14 - my original approach to uploading files would fail at random. It worked consistently in unit tests, but as soon as I started using the feature outside of specs, it became very unreliable. I was able to do something more straight-forward anyway, so hopefully this isn't objectionable.