Added insertTemporaryBeforeCurrent method to add a pre-game phase
Added Mulligan functionality to game model
Corrected according to recent changes for events and actions
when currentEntity is null, all actions are no longer prevented
`UseAbilityMessage` now supports an array of targets
Cleanup of Json Deserialization
Added chat functionality to server and client
Improved how the sockets receive data input, now using Jackson directly
Fixed some tests, ignoring one test that does not work (code works fine)
added mockito dep
improved ActionTest.testPerformAllowedAction and removed side-effecty things
removed side-effecty ActionTest.used
got rid of duplicated string literal
Refactored commandHandler setup
Added `getEntity` in game and `removedComponent` for entity
Added a method to call AIs in a game directly
Added an `IdleAI` (unplayable)
Made the `getGameModel` method an abstract method in ServerGame
Improved the handling of commands for better integration with
JCommander. Also added an `AICommand`
The client now remembers the username, using java.util.prefs.Preferences