rework of add contact...not sure how I feel about it yet