*sendEvent - using EventRef (alias to ComponentRef)
*ListenerCallData now contain entities count and pointer to EntityInfo
*Remove system_pointer from SystemCallData (use context instead)
*Register event
-Now all BECS functinality can be used without templates
-clean code
-removed some unnecessary variables
-started C-API implemantation:
* added C-API option to Meson (build included to main library)
* refactored some code (moved some code form templates to final code, removed delegates from system)
* moved templates outside EntityManager to make it possible to use in different functions
-Add all required packages as wrap dependencies
-Move source lsitnings to separate files
-Proper dependencies declarations
-Set global D compiler arguments
-Add few asserts
-Add test exe
-Other small improvements
Tested with dmd with betterC, demos executable has to be run from 'demos' directory to properly load assets.
-Adedd function to resize array to Mallocator
-significant speed up for first time ID allocation by using resizeArray instead of makeArray
-fix: onUpdate called with zero length arrays
-call updateBlocks before updateEvents (it's more accurate behaviour)
-some minore fixes
-fixed meson.build for GDC
-fixed code do cross compiling to android
-fixed build with GCC (workaround)
-added little benchmark
-several small fixes
-updated meson build (demos building, working with GCC, LDC and DMD)
-added some meson options
-added ImGUI bind for OpenGL3