Support for generating native view snapshot for Mac and iOS.

This commit implements a new `NativeView::GetSnapshot()` method for both Mac and iOS platforms to generate the snapshot of the native view.

The returned snapshot is a bitmap data with the width and height matched to the screen scale, and each pixel is represented by 4 consective bytes in the RGBA format.

This method also requires the `CoreGraphics` framework in iOS.