Refactor to split out Address parsing