- Electron version: 1.4.3
- Operating system:  @win7
- description:

working on a download app with electron and angular. 
By using webContents.downloadUrl, webContents.session.on('will-download', handler) I can make download function work well, however, I could not find a api to save download progress before closing electron app so that I can restore download when this app is started next time.

Excepted Result:
1. user click 'download' button to download a 1G file.
2. after 500M is downloaded, user quit the app
3. one hour later, user open this app again, and downloading can automatically be restored

atom/browser/api/atom_api_download_item.cc
save_path_ = path;
}
base::FilePath DownloadItem::GetSavePath() const {
  return save_path_;
}
void DownloadItem::BuildPrototype(v8::Isolate* isolate,
                                  v8::Local<v8::FunctionTemplate> prototype) {
  prototype->SetClassName(mate::StringToV8(isolate, "DownloadItem"));
  mate::ObjectTemplateBuilder(isolate, prototype->PrototypeTemplate())
      .MakeDestroyable()
      .SetMethod("pause", &DownloadItem::Pause)
      .SetMethod("isPaused", &DownloadItem::IsPaused)
      .SetMethod("resume", &DownloadItem::Resume)
      .SetMethod("canResume", &DownloadItem::CanResume)
      .SetMethod("cancel", &DownloadItem::Cancel)
      .SetMethod("getReceivedBytes", &DownloadItem::GetReceivedBytes)
      .SetMethod("getTotalBytes", &DownloadItem::GetTotalBytes)
      .SetMethod("getMimeType", &DownloadItem::GetMimeType)
      .SetMethod("hasUserGesture", &DownloadItem::HasUserGesture)
      .SetMethod("getFilename", &DownloadItem::GetFilename)
      .SetMethod("getContentDisposition", &DownloadItem::GetContentDisposition)
      .SetMethod("getURL", &DownloadItem::GetURL)
      .SetMethod("getState", &DownloadItem::GetState)
      .SetMethod("isDone", &DownloadItem::IsDone)
      .SetMethod("setSavePath", &DownloadItem::SetSavePath)
      .SetMethod("getSavePath", &DownloadItem::GetSavePath);
}
mate::Handle<DownloadItem> DownloadItem::Create(