No more bouncing around between functions - status is stored on the model, triggers events
Made geocode calls synchronous, updated comments/TODOs