use strict, fix global leak, and allow passing src string

This library is useful for more than just for uploading images. It should be more versatile by accepting a string which may be a src URL already retrieved by another canvas.