extract html to templates (separate html files)
validate form inputs
geocode user location