atomic: experimental atomics support for IBM XL C compiler.
win32: define ssize_t when on MSVC in C++ mode.
macros: add BSON_GNUC_CHECK_VERSION() macros.

These should vastly cleanup some version checks throughout the codebase.
atomic: cleanup GCC checks using new macros.
atomic: check for gcc 4.1 on x86 which has buggy 64 atomic add.

See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=40693 for more information
on the bug.
build: update ax_pthread.m4 for various clang fixes.
build: don't do parallel tests on OSX until we make testsuite more robust.

The test suite does some pretty horrible things on OS X that are generally
fine on Linux. So let's disable them until we can get around to fixing that.
context: use signed integers for context fields.
context: use signed integer for 32-bit sequence.

Only 24-bits are used anyway.
context: use signed int64_t for 64-bit sequence.

This will match the function prototype for when we have fallback 64-bit
atomic's using a lock.

Also, the workaround in context is no longer needed since the atomic
function has a fallback.
clock: track sunpro c change in header.
bson: bson_new_from_json() should take ssize_t.
bson: cast input for strlen() when len < 0.
build: fix out of tree builds.
version: add functions to fetch the library version at runtime.
bson: allow dot keys in bson_has_field().

You can now perform the following:

  bson_has_field (b, "foo.0.bar");
doc: start on new mallard based docs.
build: fixup automake for new docs.
build: print configuration result.
doc: xlink json