Every person has a contact info table and every contact has an address
Name - can't be considered a good candidate for primary key. Since, it can be duplicate/modified later. In your case, I don't see any natural key which can be used as primary key. Better, you can add/use a surrogate key(Serial No. -autoincrement) as primary key.
For address table: If you are also storing email address. You can create  separate columns for email and postal address and make email address as primary key.
To reference Contact Info from Person table - you can use email address as foreign key into person table.
So, schema can be like below:
    Person: 
    S.N. : (Auto Increment) - Primary Key
    name :
    email : Foreign key


    Contact:
    email : Primary key
    Postal address