added classes associated with the player and the map, as well as a utility class