When following the C++ hello world tutorial, the first example
immediately fails to compile due to an error in hte C++ header file.
```
In file included from main.cpp:1:
webui.hpp: In member function ‘void webui:🪟:set_proxy(std::string_view) const’:
webui.hpp:202:26: error: too few arguments to function ‘void webui_set_profile(size_t, const char*, const char*)’
202 | webui_set_profile(webui_window, proxy_server.data());
| ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from webui.hpp:21:
webui.h:422:19: note: declared here
422 | WEBUI_EXPORT void webui_set_profile(size_t window, const char* name, const char* path);
```
* nullptr instead of NULL
* const-ed member function where possible
* Removed empty window destructor
* Using member initializer in constructor
* Using std::string_view instead of const std::string&
* Using inline on free functions
* Set C++11 as minimal standard
* Fix C++ Makefile in macOS
* Update the C++ WebUI header to use references (https://github.com/webui-dev/webui/issues/103)
* Update `webui_return_string()` argument from `char*` to `const char*`
# Users/Wrappers Changes
* The window object changed from `void*` (pointer) to a simple `size_t` (integer)
# New Core Features And Changes
* License changed from `GPLv2` to 'MIT'. Thanks to @xD0135
* The core APIs is completely changed from `Mongoose` to `civetweb`. Thanks to @xD0135
* Kiosk mode support. Thanks to @malisipi
* UI responses resolving using IDs instead of first received (WebUI-JS-Bridge)
* Fix C++ Linux Clang build issue (C++ Linux GCC still broken)
* In webui_event_t `type` changed to `event_type`. This is because some wrapper's language does not support using _type_ as a variable name.
* In webui_event_t `char* response` changed to `unsigned int event_number`.
* Now `webui_interface_set_response()` use a simple `unsigned int event_number` instead of `char* response`.