implement add contact functionality