Support building Boehm GC with Winpthreads.

Winpthreads is a pthreads implementation from the MinGW-w64 project,
different from pthreads-win32.  A similar patch to this should make its
way into Boehm GC upstream.  As we will not be upgrading Boehm GC on the
14.01 branch, apply this small change to our copy of the library for now.

boehm_gc/include/private/gc_locks.h:
	Winpthreads uses scalar thread IDs.

boehm_gc/win32_threads.c:
	Winpthread thread IDs should be practically unique but make the
	conservative assumption anyway.
Account for Winpthreads in configure.

configure.ac:
	Always build the par_gc library with GC_WIN32_PTHREADS when
	pthread.h is detected on MinGW* systems.  Previously, if the
	pthread implementation is not pthread-win32 we would fallback to
	building Boehm GC with GC_WIN32_THREADS (no "P"), so it would
	NOT provide pthread wrapper functions.  But since pthread.h was
	found, the Mercury implementation would make pthread calls, calls
	which are not intercepted by Boehm GC and thus unsafe.

	Change `--with-gc-pthreads-win32' to `--with-gc-win32-pthreads',
	to mean either of pthreads-win32 or winpthreads.
Fix configuration of thread support for MinGW-w64 32-bit target.

configure.ac:
	Relax a host pattern to cover MinGW-w64 x86 targets (i*86)
	in addition to x86_64.