build: add an option for enabling glibc back-compat

for example, ./configure --with-glibc-back-compat=15 will attempt to be
compatible with a target running glibc 2.15.

This is a sledge-hammer of a work-around, but it seems to get the job done.
Do not merge. build: add test-case for libc-compat

This test intentionally causes a buffer overflow, and passes if it is caught
and aborted as expected.

Unfortunately, there doesn't seem to be a reasonble way to silence glibc's
backtrace output, so the test appears to crash when it's actually passing.

Any Ideas?