Add a strnlower function to gumbo.c with proper OOM error handling