Download feature. Needs permissions updated.

Initial downloading function is done. I need to work on handling
exceptions for urls, work out the issues with local directory writes,
and improve the file type and file name detection code.