-fixed bug with events called on destroyed entities (crash)
-don't call event on system for unsupported entity
-added "entity_id" property to EntitiesData
*updated build scripts
*removed tls variables from code (needed to support WebAssembly)
*some mmutils tweaks
*some fixes
*pthread TLS thread ID implementation
-added Atomic file (reimplementation of atomics templates for emscripten)
-added emscripten support to ecs.std
*replaced array[..] = array[ .. ] sclice copy with mempcy
*added own std library (allocator, alloca, Mutex)
*changed tamplates for collecting components for systems
-fixed issue with multiple optional components registering for system
-Multithreaded IDManager.getNewID()
*use implementation with free IDs stack (instead of classic pool)
-support for multiple UpdatePasses. Passes are added by name, and must be called between begin() end() functions.
-removed mutex from addEntity()
-commit() function added. Used to commit all changes made while update() call. Called automatically by begin() end() functions.
-more messy tests
-some documentation
-some useful code moved to functions
-adding components to existing entity
-opportunity to get entity by ID
-fixed calculating deltas
-sorting IDs arrays for allocating Templates
-fixed alignment caluclation
-added compile-time checks for "component_id" member existing in component