have you looked at the functions of the built-in Address Book? It may not suit but is worth a look.

Now make an OS X version of their Contact software which you can see Here

P