Add support for chrome.downloads API

https://developer.chrome.com/extensions/downloads
I'm  not seeing how this style helps; I hope it does as I would like to have a better solution.

As I understand it, the !Object type removes all type checking for object parameters so anything can now be safely passed in.

Plus, there's the issue of developers needing to discover new types in an externs file.