Bunch of changes for goals, action and online execution

- Implemented CollectResourcesGoal
- Added IsGatheringResource API to GameEntity. This API helps to check if the current unit is currently gathering specific resource type.
- Added AdaptParameters method to the GoalEx class. This method is used to adjust the goal parameters before sending it to retriever
- Added BuildInfrastructureGoal
- Changed Action.UpdateAux behavior to not fail if an action failed when it tries to start execution.
- Did some refactoring in AdapterEx and added condition to AdaptBuildingForTraining so it returns buildings that have empty training slots
- Enhanced GatherResourceAction to gather gas from refinaries
- Added LOG switch that disables logging in files if its not specified
- Changed expansion and execution to hand goals for parameter adaptation before retrieving cases for them
- Commented the reviser changes so we get a consistent behavior for plan retrieval.