Compile object files for DLLs with /MD

This is needed to pass CRT objects between DLLs and to safely malloc in
one DLL and free in another.

See http://msdn.microsoft.com/en-us/library/ms235460.aspx
Add new source files to Makefile
Add missing #includes
Fix warning
Employ needed integer features
Add Booleans probe
Fix Makefile targets for tests

Running 'make test' should work now.
Update .gitignore
Add more missing #includes
Copy and rework gen_makefiles.pl from Lucy source

'make test' should build and run the tests now.
Regenerate Makefiles
Add sample configure scripts
Adjust meld.pl for Windows

Fix newlines and path separators to match UNIX.
Fix CHY_IMPORT under MinGW

Under MinGW, symbols with dllimport storage class aren't constant. If a
global variable is initialized to such a symbol, an "initializer
element is not constant" error results. Omitting dllimport works, but
has a small performance penalty.
Call remove() repeatedly for ~1 sec.

Have chaz_OS_remove() keep calling remove() repeatedly for up to 1
second before giving up.  This is necessary because the existing
workaround of renaming a file can fail with a permissions error under
Windows if rapid-fire system calls happen too quickly.
Try to rename continuously for 1 second.

Before spinning on remove(), spin on rename().
Create suffix rule for all make variants

Hopefully fixes BSD make.
Fix shared library cflags
Account for MinGW case in shared lib flags.

The combination of POSIX-style flags plus an shlib_ext of "dll" wasn't
handled properly, resulting in an invalid read and random junk in the
Makefile.
Remove spurious semicolon