Added EventExecution interface, moved the event executing to the EventExecutor
parameter on registering events for identification / easier debugging
Added logging of all possible actions to AI
Added Scheduler and Guava to Server
Made ECSGame final to indicate that it should not be extended
Added toString and getActionName to `SpecificActionSystem`
Added getResource to ResourceRetriever
Added toString to UseCostSystem
Reduced logging in EventExecutor for now
Added requirement that the performer of action is the current player
Added AIComponent and AISystem
standalone client performs End Turn action, prepared for using AISystem
Server now uses AISystem to perform the AI in a separate thread
Added AIScorer dependency
Added AI that only ends turn
Added some different AI options to Server
Added some functionality for AI Medium
Added functionality for when game ends. Fixes #22
Renamed TargetSet getTargets to getChosenTargets to avoid confusion
client now gets visual update when opponent leaves