Fix compile error with Clang and older Glibc versions

The presence of '__block' as a parameter name in unistd.h in some Glibc
releases caused Clang to issue a compiler error.

Fixes #10.
Add clang-format configuration
Revert the C++ compatibility changes.

- These only make it harder to track the official Apple version at
  <opensource.apple.com>.
- Visual Studio 2013 supports C99 now
- For dispatch i/o, we could get GCC compatibility by compiling this
  file only as C++, and substituting C++11 lambdas for blocks with some
  preprocessor shenanigans. Or using Clang's libtooling to rewrite the
  source.
Rename some constants for cross-platform compat
Rename #define to match Mavericks source tree
Squash warnings about unused variables
Simplify build system

- Remove automake build system -- I don't have the knowledge to maintain
  it.
- Remove Darwin-specific stuff from CMake build system -- this was
  pretty superfluous, and never tested.
- Combine the various CMake helper functions into a single file
- Remove CTest - it's not a particularly compelling tool.
Run (some) unit tests as part of CI