TypedEvent contains an Entity field ----> BAD
Context: TypedEvent is currently an intermediate class between the interface Event and all the concrete implementation of it (MoveEvent...). It means that whenever the client sends a MoveEvent to the Server, he sends also the underlying TypedEvent.
Problem: The problem is that TypedEvent contains an Entity field. This is bad, because we are transmitting the whole entity at each event, while we could just use the Entity's id (a single int).
SideNote: Is TypedEvent really necessary ?