improved Address model API