Cast char to unsigned char before passing to isspace.

The ctype(3) routines take an int, but the only valid arguments are
EOF and values representible as unsigned char.  This is what you get
out of, e.g., getc(3), but an arbitrary value of type char is not OK
because negative values will lead to nasal demons.  Converting an
arbitrary value of type char to unsigned char is OK, since then we
have only non-negative values, and casting that to int makes it
clearer what's going on.
Cast char to unsigned char before passing to isdigit.

See discussion in previous commit about ctype(3) casts.
Add header file to declare fmemopen for systems lacking it.
Add implementation of POSIX 2008 fmemopen in terms of BSD funopen.
Add header file to declare strnlen for systems lacking it.
Add trivial implementation of strnlen.
Include our fmemopen.h in conf-unittest.c if !HAVE_FMEMOPEN.
Include our strnlen.h in proxy-bio.c if !HAVE_STRNLEN.
Include our strnlen.h in proxy-polarssl.c if !HAVE_STRNLEN.
Add fmemopen, funopen, and strnlen detection to configure.ac.
Hook fmemopen-funopen.c optionally into the NetBSD build.

XXX This should be hooked optionally into the build on any system,
but I don't know how to say that in automake.
Hook strnlen.c into the build.
Clarify fmemopen/funopen detection message on NetBSD a little.