The Location module has been around for as long as I can remember, in Drupal 6 it was one of the only ways to store address and geographical coordinates. In Drupal 7, it is just as powerful.
Location comes tightly integrated with the GMap module, and most of the time you would use both modules together. Location is used to store addresses and GMap is used to display the addresses in a map. If you want to use something other than GMap for mapping, then look at the “IP Geolocation Views & Maps” module.
drush dl location gmap views ctools drush en location location_cck gmap gmap_location views_ui