Renamed DataProvider. PlayerData sync event now takes player state into consideration.
Refactored player and other components to make things more reusable.