[MacOS] Added an optional Delegate to GameWindow

Added an optional Delegate to GameWindow to allow custom GameWindow implementations to be used.