Stringify as JSON

`url.format()` drops unrecognized / overloaded properties.
Fix dispose() impl

locking-cache stores values in arrays to support varargs, so the source
will always be the first element.
Configurable source cache size
Changes
Upgrade locking-cache to 0.1.2
0.1.1