Make geocoding controller less messy, more efficient.
Reduce looping and use of instance variables. Change scoping for specialities.
Add more error conditions.