Added log4j logging to client
Extracted interface to decouple ClientIO dependency on Server
Moved `ClientIO` to API module, made the `id` field final
`ServerGame` class now holds the ECSGame object
Moved TCGGame to another package, decoupled it from Server
Removed `GameState` and replaced with `ECSGameState`
Shortened ServerConnectionTest, re-enabled onlineOffline test
Moved FakeAIClientTCG to core module from server
Moved ServerGame and TCGGame to core
Added permissions to cardshifter-api module
added JavaDoc to TCGGame
merged with develop

one conflict still exists
added JavaDoc for TCGGame.java
FakeClient moved to core module.
Changed order of handlers to separate game-related from lobby-related
Decoupled DeckBuilderWindow from GameClientLobby
Changed local game client to use the same GUI as the online client