Fix EngineObject memory manager bug
- Fix EngineObject allocation fail due to compilation units order of initialization not guaranteed
- Remove MoveAction type from the MetaData to fix problem in Visualizer throwing warning message due to Id missing
- Expose number of played games since Engine instance started to UI
- Fix threading problems

Signed-off-by: MHesham <mhesham.fcis@gmail.com>
Merge branch 'master' of github.com:ogail/IStrategizer
Fix all planning EngineObjects memory leaks

Signed-off-by: MHesham <mhesham.fcis@gmail.com>
Remove EngineComponent from the engine
- Make its children inherit directly from EngineObject

Signed-off-by: MHesham <mhesham.fcis@gmail.com>
The most IMBA commit in all IStrategizer times
- Simplify engine objects inheritance tree by preventing the ugly multiple class inheritance
- GameModel objects are EngineObject
- Simplify serializable objects class declaration and make it more systematic
- Add filters to IStrategizer projects for organization

Signed-off-by: MHesham <mhesham.fcis@gmail.com>
Fix condition system memory leaks
- Make RtsGame Static Data container constructed on the heap and destroyable by a RtsGame::FinalizeStaticData which is now called from ClientMain

Signed-off-by: MHesham <mhesham.fcis@gmail.com>
Resource Gathering Cases generation by the CaseVisualizer and Fix Resource Gathering Action/Goal bugs

Signed-off-by: MHesham <mhesham.fcis@gmail.com>
Case Visualizer SCV Plans auto generation and fix Adapter bug

Signed-off-by: MHesham <mhesham.fcis@gmail.com>