Logic: Update sinking and movement logic
Entities: Don't set the tile immediately in the constructor

Setting the tile normally requires access to the GameLogic to update
events happening on spawn (onEntityCross). However, most of the time
we don't have access, and don't need, GameLogic when spawning an entity
as we don't have the GameTile anyway. Instead, we force us to go through
moveToTile, where we actually pass the GameLogic and let spawn effects
happen. If we don't do that, we risk ending up in an incoherent/invalid
game state, where some effects wouldn't happen because we forgot to
trigger onEntityCross.
It is however now possible to pass null to moveToTile to not run
side effects on purpose, when we know for sure that no side effect
should be happening.
TileAction: Start implementation with boat spawning
gameTurn : updated Comment, added accessors
logic : implemented GameLog GameTurn GameLogic
gamelogic : updated comments
gameturnlistener : added comments
add : gameConsoleLogic
gamelogic : added comments
player : added comments
player : implemented getScore() fct
gameTurn : added accessor EndOfTurn boolean att
Merge remote-tracking branch 'origin/graphics' into gameLogic
Merge remote-tracking branch 'origin/graphics_listener' into gameLogic

Conflicts:
	src/fr/miage/atlantis/Game3DLogic.java
	src/fr/miage/atlantis/Player.java
	src/fr/miage/atlantis/board/GameBoard.java
	src/fr/miage/atlantis/entities/PlayerToken.java
	src/fr/miage/atlantis/logic/GameLogic.java
	src/fr/miage/atlantis/logic/GameTurnListener.java
Merge remote-tracking branch 'origin/gameLogic' into graphics