have a robust fallback for strcasecmp