Add preliminary Linux support

Patches written by Mark Heily, and taken from the libdispatch mailing list. See: http://lists.macosforge.org/pipermail/libdispatch-dev/2012-August/000676.html
Fix wonky Darwin linker test in configure.ac

On Ubuntu 12.04, this check for the Darwin linker was passing, when it should not have. This resulted in a link failure when the build system tried to pass the Darwin-specific (?) `-compatibility_version` flag to the linker.

My autotools knowledge is practically non-existent, but this patch seems to make the test pass on OS X and fail on Linux, which I'm assuming is what's supposed to happen.
Remove transform.c from build

This source file still has some OS X-isms that stop it building on Linux.
Remove `testing` folder from the build

The tests don't currently build on Linux.
Ensure that DISPATCH_USE_LEGACY_WORKQUEUE_FALLBACK is #defined on Linux

Without these #defines, we get a crash in `_dispatch_root_queues_init_thread_pool()` when an application uses libdispatch for the first time.
Add Readme
Update readme
Add `_f` variants for the I/O and Data functions that only accept dispatch blocks
Update readme
Fix for dispatch semaphores and groups not respecting the requested timeouts

sem_timedwait() takes an absolute time, not a duration. The 'did a
timeout occur' check after sem_timedwait() returned was also incorrect.

These bugs were introduced by the Lion changes.
Fix format string warnings when sizeof(suseconds_t) != sizeof(int)
Linux portability fixes for transform.c; transform.c re-added to build.

TODO: Byte swap functions should probably be moved into src/shims
Test suite: numerous Linux portability fixes
Re-enable the test suite on Linux
Update Readme.md
Prepend '_np' to the unofficial dispatch functions I've added
Update Readme
Update Readme.md
dispatch_io unit test: Gracefully handle permission failures
Work around issue when calling dispatch_io_read() with `size` of 0

In some cases, if you pass dispatch_io_read() a size of zero, the I/O handler and the channel's cleanup handler execute concurrently.
This test requires the cleanup handler to execute after the I/O handler has returned for the last time (it sets `is_done` and `d`) i
so we really don't want this.