Add support for chrome.downloads API

https://developer.chrome.com/extensions/downloads
The two string fields of StringDelta are optional, so they should be declared as {string|undefined}.