Implement resource locking
Apply code review
Apply CR
Merge pull request #103 from ogail/resource

Implement resource locking
Merge branch 'master' of https://github.com/RtsAiResearch/IStrategizer into visializer

Conflicts:
	Build/Debug/IStrategizerEx.cb
	Build/IStrategizer/IStrategizer.vcxproj.filters
	Include/IStrategizer/EngineAssist.h
	Source/IStrategizer/OnlinePlanExpansionExecutionEx.cpp

Signed-off-by: MHesham <mhesham.fcis@gmail.com>
Fix bug in Train action execution and enhance logging
- Fix the bug of more than one train action bind to the same trainee in parallel execution, had to lock the trainee for correct parallel train action execution
- Make the logger log to the Debug window in debug mode as well as flush the log to IStrategizerLog.txt file beside BwapiClient
- Make plansteps identifiable by assigning a unique ID for each planstep and reflect that id in ToString() method of PlanStepEx

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