Teach compiler_id to probe for C and POSIX versions, too.
Handle unistd.h not existing; other slight tweaks.
If POSIX is unavailable, don't define any *_SOURCE thingies. Typo fixes.