Use -target rather than -triple with clang.

Apparently -target replaced -triple in the past. Using -target
also makes the behavior of clang match the target rather than
the host platform.
Remove flags for disabling ms-compatibility.

With the use of -target rather than -triple, these are no longer
needed.
__STDC__ is already defined by clang.
Remove unnecessary x86_64 and x87 undefines.

These aren't defined for our target in the first place, so we
don't need to undefine them.
Remove unnecessary undefine of __CYGWIN__.
Merge pull request #1073 from waywardmonkeys/cleanup-compiler-flags

Cleanup compiler flags