/* $DOC$
   $NAME$
      ft_Proper()
   $CATEGORY$
      String
   $ONELINER$
      Convert a string to proper-name case
   $SYNTAX$
      ft_Proper( <cString> ) -> cProperName
   $ARGUMENTS$
      <cString> is the string to be converted.
   $RETURNS$
      A string of the same length as <cString>, only converted to
      proper name case (upper/lower case).
   $DESCRIPTION$
      ft_Proper() uses a brute-force algorithm to convert a string
      to propername case.  First, it capitalizes the first letter of
      all words starting after a blank, dash, or apostrophe.  This
      catches most names, including special cases such as names
      beginning with O' (O'Malley, O'Reilly) and hyphenated names
      (such as Susan Chia-Mei Lo).

      Next, it does a specific adjustment for words beginning in "Mc"
      It finds the first 'Mc' and capitalizes the next character after
      it.  It does this for all occurrences of Mc.

      The original ft_Proper() was written in Clipper by Glenn Scott
      and Mark Zechiel; it was re-written in C (and thus, optimized
      and enhanced) by Robert DiFalco.
   $EXAMPLES$
      PROCEDURE Main( cStr )
         ? ft_Proper( cStr )
         RETURN
   $END$
 */
