-added mixin for adding exluded components using it's type
-demos:
*added GUI for selecting templates and choosing tools
*change SpaceInvades SideMove system to not using events for better performance and multithreading
*added Entites spawning support
*fixed some Snake demo bugs
*GUI work's better now
*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