**Many thanks to YoEnte and RubyKanima for their contribution.**
What's Changed
1. Classes and attributes:
- Added `Coordinate` super class
- Added `TeamEnum` enumeration class
- Added `team_enum` attribute to `Move` class
- Added `Penguin` class
- Added `penguin` and `fish` attributes to the `Field` class
- Removed color and added `name`, `fish`, `penguins`, `moves` attributes in the `Team` class
- Added `first_team`, `second_team` attribute to `GameState` class
- Removed the `Fish` class
- Adapted the methods of `GameState` to the new classes
- Moved `opponent` from `Team` to `GameState`
2. Renamed and remade existing elements:
- Remade `pretty_print` for a more concise look
- Adapted methods of `Board`
- Remade `get_teams_penguins` which returns `List[Penguin]` now
- Reworked the `NetworkSocket` class
- Reworked the `XmlProtocolInterface` class
- Reworked `GameClient`
3. Fixed bugs and issues:
- Fixed an issue with move that it no longer changes the original board
- Fixed a problem with `_get_possible_moves`
- Fixed a problem with `current_team_from_turn`
- Fixed a problem with `perform_move`
- Fixed several issues that caused crashes in socha
- Fixed a problem where it wouldn't connect to the server in auto-reconnect
- Fixed several issues that prevented the correct simulation and storing of game states in penguin
- Fixed an issue where the protocol tag doesn't get sent if auto reconnect in `XmlProtocolInterface`
- Fixed an issue where the client doesn't reconnect with auto-reconnect in `NetworkSocket`
4. Other changes:
- Added auto-reconnect feature to starter
- Changed license to MIT
- Extended history list in `GameClient`
- Added some logging in `GameClient`
- Added a doc that lists all changes from previous version, that can be found [here](https://github.com/FalconsSky/socha-python-client/blob/master/changes.md).
**Full Changelog**: https://github.com/FalconsSky/socha-python-client/compare/v1.0.0...v1.0.1