This adds the ability to save link targets or images. The save location
can be default, or the save as dialog can be invoked.
Somewhat sensible default filenames are provided.
Data URLs are also supported (though they need quite a bit of massaging
to get past the WebExt security limitations). Specificially, they need
to be round-tripped though a Blob, and must be saved from the background
context.
Increments the last number in a URL by a given step (positive or
negative)
Also includes a url_util helper module and some tests for it
Logic taken from vimperator browser.js:17