* Electron version: latest
* Operating system: MacOS

The TouchBar API (and MacOS in general) let's you pass an `imageNamed` param to NSImage to get the default OS image. For example: `[NSImage imageNamed:@"NSTouchBarGoUpTemplate"];` creates an NSImage with the default up chevron icon on MacOS. 

It would be pretty neat-o to allow TouchBar users to do something like this: 

```javascript
new TouchBarButton({
  icon: nativeImage.createFromMacOSNamedImage('NSTouchBarGoUpTemplate')
})
```

...and maybe that would just no-op with `nativeImage.createEmpty()` on non-MacOS platforms. 

I guess this is really bigger than just TouchBar because this API could benefit `Menu` for example as well, or anywhere else where you use `nativeImage`. 


atom/common/api/atom_api_native_image.cc
}
}  
NativeImage::NativeImage(v8::Isolate* isolate, const gfx::Image& image)
    : image_(image) {
  Init(isolate);
  if (image_.HasRepresentation(gfx::Image::kImageRepSkia)) {
    isolate->AdjustAmountOfExternalAllocatedMemory(
      image_.ToImageSkia()->bitmap()->computeSize64());
  }
  MarkHighMemoryUsage();
}
#if defined(OS_WIN)
NativeImage::NativeImage(v8::Isolate* isolate, const base::FilePath& hicon_path)
    : hicon_path_(hicon_path) {
  
  gfx::ImageSkia image_skia;
  ReadImageSkiaFromICO(&image_skia, GetHICON(256));
  image_ = gfx::Image(image_skia);
  Init(isolate);
  if (image_.HasRepresentation(gfx::Image::kImageRepSkia)) {
    isolate->AdjustAmountOfExternalAllocatedMemory(
      image_.ToImageSkia()->bitmap()->computeSize64());
  }
  MarkHighMemoryUsage();
}
#endif
NativeImage::~NativeImage() {