The process of converting street addresses and zip codes to geographic coordinates is called geocoding. There are a number of free and paid webservices/APIs available on the internet (Google, Yahoo, Bing, etc) that will perform the conversion.
You could use the services in the ContentLoaderFunctions resource to POST to external webservices. Once you receive the response, you could parse the response for the coordinates and subsequently apply the coordinates to your model/mashups.
We're also doing something like this, so I think this should work: http://pastebin.com/22dnQPPzThe key is to set the country and postal_code in the components field, if you just use address you will get locations with the input post code as street number etc.