in reply to Proper case for names

Look at Lingua::EN::NameCase and Lingua::EN::NameParse.

Cheers,
KM