pesky pointer problems...

This doesn't look good:

 bool ConfigMan::getPhone (byte num, char * crewPhone)
{
  crewPhone= getPhone (num);

crewPhone is local, it will not get passed back. You would need char ** or a reference.

Or, just keep the original function as is and return null if the phone number is not found.