System contain data required to proper glue EntityManager with Systems.
System callbacks:
- void onUpdate(EntitesData);
 - void onEnable() - called inside system.enable() function
 - void onDisable() - called inside system.disable() function
 - bool onBegin() - called inside manager.begin()
 - void onEnd() - called inside manager.end()
 - void onCreate() - called after registration inside registerSystem function
 - void onDestroy() - called during re-registration and inside manager destructor
 - void onAddEntity(EntitesData) - called for every entity which are assigned to system (by adding new entity or changing its components)
 - void onRemoveEntity(EntitiesData) - called for every entity removed from system update process
 - void onChangeEntity(EntitiesData) - called for every entity which components are changed but it was previously assigned to system
 - void handleEvent(Entity*, Event) - called for every event supported by system
 
System module.