adding map and refactored
added position class