Database Designing Issue
An address is a inseparable entity consisting of Street, City, State, Zip and Country. Those should all go into one table. There might be a reason to have an additional e.g. country table to store countries the person visited, but the address table should always contain at least the above five fields as a street without the rest is meaningless.

For phone numbers it makes sense to have a separate table. The fax numbers are usually stored in the same table differentiated by a type. That makes future extensions a lot simpler, but you could got with separate a fax table too. That would allow you to store additional information like e.g. if that fax number can receive color facsimiles.